# PS3.4

## DICOM PS3.4 2018b - Service Class Specifications

### DICOM Standards Committee

Copyright © 2018 NEMA

List of Figures

5-1. Entity Convention
5-2. Relationship Convention
6-1. Major Structures of DICOM Information Model
C.5-1. An Example of the Sub-Operation SCU/SCP Roles
C.5-2. An Example of the Retrieve (C-GET) Negotiation
C.6-1. Patient Root Query/Retrieve Information Model E/R Diagram
C.6-2. Study Root Query/Retrieve Information Model E/R Diagram
H.2-1. Print Management Data Flow Model
H.2-2. Print Management Data Flow Model
H.2-3. Print Management Service Class Structure
H.2-4. Configurations for Printing On Multiple Printers
K.6-1. Modality Worklist Information Model E/R Diagram
N.2-1. Grayscale and Color Image Transformation Models
N.2-2. Common Spatial and Annotation Transformation Model
N.2-3. Grayscale to Color Blending Transformation Model
N.2.5-1. XA/XRF Grayscale Image Transformation Model
N.2.6-1. Color and Threshold Application
N.2.6-2. Foreground Blending
N.2.6-3. Equal Blending
Q.4-1. Relevant Patient Information E/R Model
U.6-1. Hanging Protocol Information Model E/R Diagram
V.6-1. Product Characteristics E-R Diagram
V.6-2. Substance Approval E-R Diagram
X.6-1. Color Palette Information Model E/R Diagram
Y.6-1. Composite Instance Root Information Model E/R Diagram
Z.3.1-1. Retrieve Without Bulk Data Information Model E/R Diagram
BB.6-1. Implant Template Information Model E/R Diagram
BB.6-2. Implant Assembly Template Information Model E/R Diagram
BB.6-3. Implant Template Group Information Model E/R Diagram
CC.1.1-1. Unified Procedure Step State Diagram
CC.2.8-1. Unified Procedure Step E-R Diagram
DD.2-1. RT Verification Data Flow
EE.1-1. Display System Management Data Flow
FF.2-1. Grayscale Planar MPR Volumetric Pipeline
FF.2-2. Compositing Planar MPR Volumetric Pipeline
FF.2.1.2.1-1. Volume Rendering Volumetric Pipeline
FF.2.1.2.1-2. Segmented Volume Rendering Volumetric Pipeline
FF.2.1.2.1-3. Multiple Volume Rendering Volumetric Pipeline
FF.2-3. One Input -> RGBA Component
FF.2-4. Two Inputs ->RGBA Component
FF.2-5. RGB Compositor Component
FF.2.3.2.2-2. RGBA Compositor Component
FF.2-6. Internal Structure of One Input -> RGBA Component
FF.2-7. Internal Structure of Two Input -> RGBA Component
FF.2-8. Internal Structure of RGB Compositor Component
FF.2.3.3.2-1. Internal Structure of RGB and Opacity Compositor Component
FF.3.2-1. Input Sequence Animation
FF.3.2-2. Presentation Sequence Animation
FF.3.2-3. Crosscurve Animation
FF.2.4.2.4-1. Flythrough Animation
HH.6-1. Defined Procedure Protocol Information Model E/R Diagram
II.6-1. Protocol Approval Information Model E/R Diagram

List of Tables

B.2-1. C-STORE Status
B.3-1. Service-Class-Application-Information (A-ASSOCIATE-RQ)
B.3-2. Service-Class-Application-Information (A-ASSOCIATE-AC)
B.3-3. Standard and Related General SOP Classes
B.4-1. Attributes Subject to Coercion
B.5-1. Standard SOP Classes
B.6-1. Retired Standard SOP Classes
C.1.2-1. Key Type Conventions for Query/Retrieve Information Models
C.3-1. Additional Query/Retrieve Attributes
C.3.5-1. Modality-Specific SOP Class Conversions
C.4-1. C-FIND Response Status Values
C.4-2. C-MOVE Response Status Values
C.4-3. C-GET Response Status Values
C.5-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ
C.5-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC
C.5-3. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ
C.5-4. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC
C.6.1-1. Query/Retrieve Level Values for Patient Root
C.6-1. Patient Level Attributes for the Patient Root Query/Retrieve Information Model
C.6-2. Study Level Keys for the Patient Root Query/Retrieve Information Model
C.6-3. Series Level Attributes for the Patient Root Query/Retrieve Information Model
C.6-4. Composite Object Instance Level Keys for the Patient Root Query/Retrieve Information Model
C.6.1.3-1. SOP Classes for Patient Root Query/Retrieve
C.6.2-1. Query/Retrieve Level Values for Study Root
C.6-5. Study Level Keys for the Study Root Query/Retrieve Information Model
C.6.2.3-1. SOP Classes for Study Root Query/Retrieve
F.1-3. Modality Performed Procedure Step States
F.1-4. Modality Performed Procedure Step State Transition Diagram
F.7.1-1. DIMSE Service Group
F.7.2-1. Modality Performed Procedure Step SOP Class N-CREATE, N-SET and Final State Attributes
F.7.2-2. N-SET Status
F.8.1-1. DIMSE Service Group
F.8.2-1. Modality Performed Procedure Step Retrieve SOP Class N-GET Attributes
F.8.2-2. Response Status
F.9.1-1. DIMSE-N Service Group
F.9.2-1. Performed Procedure Step Notification Event Information
H.3.2.2.1-1. SOP Classes of Basic Grayscale Print Management Meta SOP Class
H.3.2.2.2-1. SOP Classes of Basic Color Print Management Meta SOP Class
H.3.3.2-1. List of Optional SOP Classes for Basic Print Management Meta SOP Classes
H.4-1. DIMSE Service Group
H.4-2. N-CREATE Attribute List
H.4.1.2.1.2-1. Status Values for Basic Film Session SOP Class
H.4-3. N-ACTION Arguments
H.4-4. SOP Class Status Values
H.4-5. DIMSE Service Group
H.4-6. N-CREATE Attribute List
H.4.2.2.1.2-1. Status Values for Basic Film Box SOP Class
H.4-7. N-SET Attributes
H.4-8. N-ACTION Arguments
H.4-9. Status Values
H.4.3.1.2-1. DIMSE Services Applicable to Basic Grayscale Image Box
H.4-10. N-SET Attributes
H.4.3.1.2.1.2-1. Status Values for Basic Grayscale Image Box SOP Class
H.4.3.2.2-1. DIMSE Services Applicable to Basic Color Image Box
H.4-11. N-SET Attributes
H.4.3.2.2.1.2-1. Status Values for Basic Color Image Box SOP Class
H.4.4.2-1. DIMSE Services Applicable to Basic Annotation Box
H.4-13. N-SET Attributes
H.4.5.2-1. DIMSE Services Applicable to Print Job
H.4-14. Notification Event Information
H.4-15. N-GET Attributes
H.4.6.2-1. DIMSE Services Applicable to Printer
H.4-16. Notification Event Information
H.4-17. N-GET Attributes
H.4.9.2-1. DIMSE Services Are Applicable to Presentation LUT
H.4-23. N-CREATE Attribute List
H.4.9.2.1.2-1. Status Values for Presentation LUT SOP Class
H.4.11.2-1. IOD DIMSE Services
H.4-26. N-GET Attributes
I.3-1. Allowed Combinations of Roles
I.4-1. Media Storage Standard SOP Classes
J.3.1-1. IOD DIMSE Services
J.3-1. Storage Commitment Request - Action Information
J.3-2. Storage Commitment Result - Event Information
K.4-1. C-FIND Response Status Values
K.5.1-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ
K.5.1-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC
K.6-1. Attributes for the Modality Worklist Information Model
K.6-1a. Attributes for the Modality Worklist C-FIND Identifier
K.6.1.4-1. Modality Worklist SOP Class
N.2.5.1-1. Summary of Providing a LUT Function for Subtraction
P.2-1. DIMSE Service Group
P.2-2. Procedural Event Logging Action Information
P.2-3. Response Status
P.2-4. Procedural Event Logging Action Reply
P.3-1. DIMSE Service Group
P.3-2. Substance Administration Logging N-ACTION Information
P.3-3. Response Status
Q.2-1. C-FIND Response Status Values
Q.4-1. Attributes for the Relevant Patient Information Model
Q.4-2. Additional C-FIND Identifier Attributes
Q.4-3. SOP Classes for the Relevant Patient Information Model
R.3.1-1. DIMSE Service Group
R.3.2-1. Instance Availability Notification SOP Class N-CREATE Attributes
S.3.1-1. DIMSE-N Services Applicable to Media Creation Management
S.3.2.1.1-1. Media Creation Management - N-CREATE Attributes
S.3.2.2.4-1. SOP Class Status Values
S.3.2.2.1-1. Media Creation Request - Action Information
S.3.2.3.1-1. Media Creation Request - Action Information
S.3.2.3.4-1. Response Statuses
S.3.2.4.1-1. Media Creation Management SOP Class N-GET Attributes
S.3.2.4.4-1. Response Statuses
U.6-1. Attributes for the Hanging Protocol Information Model
U.6.1.4-1. Hanging Protocol SOP Classes
V.4-1. C-FIND Response Status Values
V.6-1. Attributes for the Product Characteristics Query Information Model
V.6.1.4-1. Product Characteristics Query SOP Classes
V.6-2. Attributes for the Substance Approval Query Information Model
V.6.2.4-1. Substance Approval Query SOP Classes
X.6-1. Attributes for the Color Palette Information Model
X.6.1.4-1. Color Palette SOP Classes
Y.4-1. C-MOVE Response Status Values for Instance Root Retrieve
Y.4-2. C-GET Response Status Values for Instance Root Retrieve
Y.5.1-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ
Y.5.1-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC
Y.6.1-1. Retrieve Level Values for Composite Instance Root
Y.6-1. Composite Instance Level Keys for the Composite Instance Root Query/Retrieve Information Model
Y.6-2. Frame Level Keys for the Composite Instance Root Query/Retrieve Information Model
Y.6.1.3-1. SOP Classes for Composite Instance Query/Retrieve Root
Z.1-1. Attributes Not to Be Included in Instances Sent
Z.4-1. C-GET Response Status Values for Instance Root Retrieve
Z.6.1-1. Retrieve Level Value for Retrieve Without Bulk Data
Z.6-1. Composite Instance Level Keys for the Composite Instance Root Query/Retrieve Information Model
Z.6.1.3-1. SOP Classes for Composite Instance Query/Retrieve Root
BB.6-1. Attributes for the Implant Template Information Model
BB.6-2. Attributes for the Implant Assembly Template Information Model
BB.6-3. Attributes for the Implant Template Group Information Model
BB.6.1.4-1. Implant Template SOP Classes
CC.1.1-1. Unified Procedure Step (UPS) States
CC.1.1-2. Unified Procedure Step State Transition Table
CC.2-1. DIMSE Service Group - UPS Push
CC.2-2. DIMSE Service Group - UPS Pull
CC.2-3. DIMSE Service Group - UPS Watch
CC.2-4. DIMSE Service Group - UPS Event
CC.2.1-1. Change UPS State - Action Information
CC.2.1-2. Status Values
CC.2.2-1. Request UPS Cancel - Action Information
CC.2.2-2. Status Values
CC.2.3-1. Subscribe/Unsubscribe to Receive UPS Event Reports - Action Information
CC.2.3-2. UPS Subscription State Transition Table
CC.2.3-3. Status Values
CC.2.4-1. Report a Change in UPS Status - Event Report Information
CC.2.5-1. Final State Codes
CC.2.5-2a. UPS Code Sequence Macro
CC.2.5-2b. UPS Content Item Macro
CC.2.5-2c. Referenced Instances and Access Macro
CC.2.5-2d. HL7V2 Hierarchic Designator Macro
CC.2.5-2e. Issuer of Patient ID Macro
CC.2.5-2f. SOP Instance Reference Macro
CC.2.5-2g. Storage Macro
CC.2.5-3. UPS SOP Class N-CREATE/N-SET/N-GET/C-FIND Attributes
CC.2.5-4. Status Values
CC.2.6-1. Status Values
CC.2.7-1. Status Values
CC.2.8-2. C-FIND Response Status Values
DD.3.2-1. DIMSE Service Group
DD.3.2.1-1. N-CREATE and N-SET Attribute List - RT Conventional Machine Verification SOP Class
DD.3.2.1-2. N-CREATE and N-SET Attribute List - RT Ion Machine Verification SOP Class
DD.3.2.1.2-1. RT Ion Machine Verification SOP Class N-CREATE Status Values
DD.3.2.1.2-2. RT Ion Machine Verification SOP Class N-SET Status Values
DD.3.2.2.1-1. Verification Parameters Selector Attribute Macro
DD.3.2.2.2-1. N-GET Attribute List- RT Conventional Machine Verification SOP Class and RT Ion Machine Verification SOP Class
DD.3.2.2.3-1. RT Conventional Machine and RT Ion Machine Verification SOP Class N-GET Status Values
DD.3.2.3-1. Action Event Information
DD.3.2.3-2. RT Conventional Machine and RT Ion Machine Verification SOP Class N-ACTION Status Values
DD.3.2.5-1. Notification Event Information
EE.2.2-1. DIMSE Service Group - Display System
EE.2.2.1-1. Table Result Context Macro
EE.2.2.1-2. Display System N-GET Attributes
GG.3-1. Standard SOP Classes
GG.4-1. C-STORE Response Status Values
HH.6-1. Attributes for the Defined Procedure Protocol Information Model
HH.6.1.4-1. Defined Procedure Protocol SOP Classes
II.6-1. Attributes for the Protocol Approval Information Model
II.6.1.4-1. Protocol Approval SOP Classes

# Notice and Disclaimer

The information in this publication was considered technically sound by the consensus of persons engaged in the development and approval of the document at the time it was developed. Consensus does not necessarily mean that there is unanimous agreement among every person participating in the development of this document.

NEMA standards and guideline publications, of which the document contained herein is one, are developed through a voluntary consensus standards development process. This process brings together volunteers and/or seeks out the views of persons who have an interest in the topic covered by this publication. While NEMA administers the process and establishes rules to promote fairness in the development of consensus, it does not write the document and it does not independently test, evaluate, or verify the accuracy or completeness of any information or the soundness of any judgments contained in its standards and guideline publications.

NEMA disclaims liability for any personal injury, property, or other damages of any nature whatsoever, whether special, indirect, consequential, or compensatory, directly or indirectly resulting from the publication, use of, application, or reliance on this document. NEMA disclaims and makes no guaranty or warranty, expressed or implied, as to the accuracy or completeness of any information published herein, and disclaims and makes no warranty that the information in this document will fulfill any of your particular purposes or needs. NEMA does not undertake to guarantee the performance of any individual manufacturer or seller's products or services by virtue of this standard or guide.

In publishing and making this document available, NEMA is not undertaking to render professional or other services for or on behalf of any person or entity, nor is NEMA undertaking to perform any duty owed by any person or entity to someone else. Anyone using this document should rely on his or her own independent judgment or, as appropriate, seek the advice of a competent professional in determining the exercise of reasonable care in any given circumstances. Information and other standards on the topic covered by this publication may be available from other sources, which the user may wish to consult for additional views or information not covered by this publication.

NEMA has no power, nor does it undertake to police or enforce compliance with the contents of this document. NEMA does not certify, test, or inspect products, designs, or installations for safety or health purposes. Any certification or other statement of compliance with any health or safety-related information in this document shall not be attributable to NEMA and is solely the responsibility of the certifier or maker of the statement.

# Foreword

This DICOM Standard was developed according to the procedures of the DICOM Standards Committee.

The DICOM Standard is structured as a multi-part document using the guidelines established in [ISO/IEC Directives, Part 2].

DICOM® is the registered trademark of the National Electrical Manufacturers Association for its standards publications relating to digital communications of medical information, all rights reserved.

HL7® and CDA® are the registered trademarks of Health Level Seven International, all rights reserved.

SNOMED®, SNOMED Clinical Terms®, SNOMED CT® are the registered trademarks of the International Health Terminology Standards Development Organisation (IHTSDO), all rights reserved.

LOINC® is the registered trademark of Regenstrief Institute, Inc, all rights reserved.

# 1 Scope and Field of Application

This Part of the DICOM Standard specifies the set of Service Class Definitions that provide an abstract definition of real-world activities applicable to communication of digital medical information. For each Service Class Definition, this Part specifies:

- the semantic description of the activities of the Service Class Definition

- the group of DIMSE Service operations and notifications applicable to the Service Class Description

- one or more functionally-related Service-Object Pair (SOP) Classes that are supported by the Service Class Definition and may be performed between peer DICOM Application Entities

- the relationship of each Service-Object Pair (SOP) Classes to applicable Information Object Definitions specified in PS3.3.

For each Service Class Definition, this Part does not specify:

- any necessary information for the semantic description of the IOD

- relationships to associated real-world objects relevant to the IOD

- Attributes that describe the characteristics of the IOD

This Part is related to other parts of the DICOM Standard in that:

- PS3.3 Information Object Definitions specifies the set of Information Object Definitions to which the services defined in this Part may be applied

- PS3.5 Data Structure and Semantics defines the data encoding used in the DIMSE Protocol when applied to IODs defined in this Part

- PS3.6 Data Dictionary contains an index by Tag of all IOD Attributes defined in this Part. This index includes the Value Representation and Value Multiplicity for each Attribute

- PS3.7 Message Exchange Protocol defines the DIMSE Services and Protocol that may be applied to IODs defined in this Part.

# 2 Normative References

The following standards contain provisions which, through reference in this text, constitute provisions of this Standard. At the time of publication, the editions indicated were valid. All standards are subject to revision, and parties to agreements based on this Standard are encouraged to investigate the possibilities of applying the most recent editions of the standards indicated below.

[ISO/IEC Directives, Part 2] ISO/IEC. 2016/05. 7.0. Rules for the structure and drafting of International Standards. http://www.iec.ch/members_experts/refdocs/iec/isoiecdir-2%7Bed7.0%7Den.pdf .

[ISO 7498-1] ISO. 1994. Information Processing Systems - Open Systems Interconnection - Basic Reference Model.

[ISO/TR 8509] ISO. Information Processing Systems - Open Systems Interconnection - Service Conventions. ISO/TR 8509 has been withdrawn. See ISO/IEC 2382-26:1993 Information technology - Vocabulary - Part 26: Open systems interconnection .

[RFC7230] IETF. June 2014. Hypertext Transfer Protocol (HTTP/1.1): Message Syntax and Routing. http://tools.ietf.org/html/rfc7230 .

[Porter and Duff 1984] Computer Graphics. Porter, Thomas and Duff, Tom. 1984. 18. 3. 253-259. “Compositing Digital Images”. doi:10.1145/800031.808606 http://keithp.com/~keithp/porterduff/p253-porter.pdf .

# 3 Definitions

For the purposes of this Standard the following definitions apply.

## 3.1 Reference Model Definitions

This Part of the Standard makes use of the following terms defined in ISO 7498-1:

1. Application Entity

2. Service or Layer Service

3. Application Entity Title

## 3.2 Service Conventions Definitions

This Part of the Standard makes use of the following terms defined in ISO/TR 8509:

1. Primitive

## 3.3 DICOM Introduction and Overview Definitions

This Part of the Standard makes use of the following terms defined in PS3.1:

1. Attribute

2. Command

3. Data Dictionary

4. Information Object

5. Message

## 3.4 DICOM Upper Layer Service Definitions

This Part of the Standard makes use of the following terms defined in PS3.8:

1. Unique Identifier (UID)

2. DICOM Upper Layer Service

## 3.5 DICOM Message Exchange Definitions

This Part of the Standard makes use of the following terms defined in PS3.7:

1. DICOM Message Service Element (DIMSE)

2. DIMSE-N Services

3. DIMSE-C Services

4. DIMSE Service Group (DSG)

## 3.6 DICOM Information Object Definitions

This Part of the Standard makes use of the following terms defined in PS3.3:

1. Attribute Tag

2. Composite IOD

3. DICOM Application Model

4. DICOM Information Model

5. Information Object Definition

6. Module

7. Normalized IOD

8. Functional Group

## 3.7 DICOM Conformance

This Part of the Standard makes use of the following terms defined in PS3.2:

1. Standard SOP Class

2. Specialized SOP Class

3. Conformance Statement

## 3.8 DICOM Data Structures and Encoding

This Part of the Standard makes use of the following terms defined in PS3.5:

1. Data Element

2. Data Set

## 3.9 DICOM Service Class Definitions

The following definitions are commonly used in this Part of the DICOM Standard:

Classic Image Storage SOP Class : an Image Storage SOP Class that is defined by an IOD that stores a single frame and defines the majority of the Attributes in the top-level Data Set.

Combined Print Image : a pixel matrix created by superimposing an image and an overlay, the size of which is defined by the smallest rectangle enclosing the superimposed image and overlay.

DICOM Information Model : an Entity-Relationship diagram that is used to model the relationships between the Information Object Definitions representing classes of Real-World Objects defined by the DICOM Application Model.

DICOM Application Model : an Entity-Relationship diagram used to model the relationships between Real-World Objects that are within the area of interest of the DICOM Standard.

Enhanced Image Storage SOP Class : an Image Storage SOP Class that is defined by an IOD that stores multiple frames and defines the majority of the Attributes in Functional Group Sequences.

Legacy Converted Enhanced Image Storage SOP Class : a modality-specific Enhanced Image Storage SOP Class that is defined by an IOD that defines only generic Functional Group Sequences, which does not require information that is not present in Classic Image Storage SOP Class Instances, and is intended for storage of converted Classic Image Storage SOP Class Instances when there is insufficient information to use a True Enhanced Image Storage SOP Class.

Meta Service-Object Pair (SOP) Class : a pre-defined set of SOP Classes that may be associated under a single SOP for the purpose of negotiating the use of the set with a single item.

Performed Procedure Step SOP Class : any SOP Class that encodes the details about the performance of a procedure step.

Performed Procedure Step SOP Instance : an instance of a Performed Procedure Step SOP Class. Note that all UPS instances are instances of the UPS Push SOP Class, which is capable of encoding details about the performance of a procedure step (in addition to details about the scheduled procedure step) and thus qualify as an instance of a Performed Procedure Step SOP Class.

Preformatted Grayscale Image : an image where all annotation, graphics, and grayscale transformations (up to and including the VOI LUT) expected in the printed image have been burnt in or applied before being sent to the SCP. It is a displayable image where the polarity of the intended display is specified by Photometric Interpretation (0028,0004).

Preformatted Color Image : an image where all annotation, graphics, and color transformations expected in the printed image have been burnt in or applied before being sent to the SCP.

Real-World Activity : that which exists in the real world that pertains to specific area of information processing within the area of interest of the DICOM Standard. Such a Real-World Activity may be represented by one or more computer information metaphors called SOP Classes.

Real-World Object : that which exists in the real world upon which operations may be performed that are within the area of interest of the DICOM Standard. Such a Real-World Object may be represented through a computer information metaphor called a SOP Instance.

Related General SOP Class : a SOP Class that is related to another SOP Class as being more generalized in terms of behavior defined in the standard, and that may be used to identically encode an instance with the same Attributes and values, other than the SOP Class UID. In particular, this may be the SOP Class from which a Specialized SOP Class (see PS3.2) is derived.

Service Class User : the role played by a DICOM Application Entity (DIMSE-Service-User) that invokes operations and performs notifications on a specific Association.

Service Class Provider : the role played by a DICOM Application Entity (DIMSE-Service-User) that performs operations and invokes notifications on a specific Association.

Service Class : a collection of SOP Classes and/or Meta SOP Classes that are related in that they are described together to accomplish a single application.

Service-Object Pair (SOP) Class : the union of a specific set of DIMSE Services and one related Information Object Definition (as specified by a Service Class Definition) that completely defines a precise context for communication of operations on such an object or notifications about its state.

Service-Object Pair (SOP) Instance : a concrete occurrence of an Information Object that is managed by a DICOM Application Entity and may be operated upon in a communication context defined by a specific set of DIMSE Services (on a network or interchange media). A SOP Instance is persistent beyond the context of its communication.

True Enhanced Image Storage SOP Class : a modality-specific Enhanced Image Storage SOP Class that is defined by an IOD that defines modality-specific Functional Group Sequences, Attributes and sets of values, and is intended for creation by acquisition devices.

## 3.10 Device Independent Pixel Values

This Part of the Standard makes use of the following terms defined in PS3.3:

1. P-Value

2. PCS-Value

## 3.11 HTTP Definitions

This Part of the Standard makes use of the following terms defined in IETF RFC7230:

1. Origin-Server

2. User-Agent

# 4 Symbols and Abbreviations

The following symbols and abbreviations are used in this Part of the DICOM Standard.

ACR American College of Radiology

ASCII American Standard Code for Information Interchange

AE Application Entity

ANSI American National Standards Institute

CDS Clinical Decision Support

CEN TC251 Comité Européen de Normalisation - Technical Committee 251 - Medical Informatics

Chest CAD Computer-Aided Detection and/or Computer-Aided Diagnosis for chest radiography

DICOM Digital Imaging and Communications in Medicine

DIMSE DICOM Message Service Element

DIMSE-C DICOM Message Service Element-Composite

DIMSE-N DICOM Message Service Element-Normalized

HL7 Health Level 7

IE Information Entity

IEEE Institute of Electrical and Electronics Engineers

IOD Information Object Definition

IS Information System

ISO International Standards Organization

JIRA Japan Medical Imaging and Radiological Systems Industries Association

JPIP JPEG 2000 Interactive Protocol

MAR Medication Administration Record

NEMA National Electrical Manufacturers Association

OSI Open Systems Interconnection

SCP Service Class Provider

SCU Service Class User

SOP Service-Object Pair

UID Unique Identifier

# 5 Conventions

## 5.1 Entity-Relationship Model

### 5.1.1 Entity

An entity is used in an Entity-Relationship (E-R) model to represent a Real-World Object, class of Real-World Objects, or DICOM data representation (such as IOD or Module). An entity is depicted as a box within this Part of the DICOM Standard as shown in Figure 5-1.

Figure 5-1. Entity Convention

### 5.1.2 Relationship

A relationship, which defines how entities are related, is depicted as a diamond within this Standard as shown in Figure 5-2.

Figure 5-2. Relationship Convention

The relationship is read from source to destination entity as indicated by the arrows. The a and b show the source and destination cardinality of the relationship respectively. The following cardinalities are permitted:

1. (a = 1, b = 1) -one source entity is related to one destination entity

2. (a = 1, b = 0-n) -one source entity is related to zero or more destination entities

3. (a = 1, b = 1-n) -one source entity is related to one or more destination entities

4. (a = 1-n, b = 1) -one or more source entities are related to one destination entity

5. (a = 1-n, b = 0-n) -one or more source entities are related to zero or more destination entities

6. (a = 1-n, b = 1-n) -one or more source entities are related to one or more destination entities

In a relationship where (a = 1-n, b = 1-n) the values of the source and destination cardinalities may be different. The value "n" simply denotes one or more.

### Note

DICOM has added the use of arrows to the E-R diagramming conventions often used in other literature. This has been done to avoid the possibility of inferring an incorrect relationship that can result from reading a relationship in the reverse order of that intended. For example, a relationship "Cat Catches Mouse" could be read "Mouse Catches Cat" if the arrows were not present.

A relationship may be bi-directional (i.e., the relationship is true in both directions). In such a case, the convention used is arrows pointing toward both the source and the destination entities.

## 5.2 Sequences

Certain tables in this Part of the DICOM Standard denote a Sequence of Items by using the symbol: '>.'

In Annex A, '>' is used to identify a 'Sequence of Modules.' Nested Sequences of Modules are identified by '>>'. In Annex B and Annex C, '>' is used to identify a 'Sequence of Attributes'. See PS3.5 for the complete specification of how Sequences of Items shall be encoded.

### Note

Information Object Definitions (IODs) that include the Sequence of Module construct are often called folders. The use of 'Sequences of Attributes' is not limited to 'Folders.'

## 5.3 Response Status Values

Certain tables in this Part of the DICOM Standard denote an implementation specific response status code by using the symbol 'xx' or 'xxx' as part of the code.

### Note

Each 'x' symbol may be replaced by an implementation with a hexadecimal digit in the range from 0 to F.

## 5.4 Usage Specification

The building blocks of SOP Classes are Modules and DIMSE Services. The DIMSE Services associated with a SOP Class may be Mandatory (M) or Optional (U). The usage may be different for the SCU and SCP. The usage is specified as a pair of letters: the former indicating the SCU usage, the latter indicating the SCP usage.

The meaning and behavior of the usage specification for DIMSE Services are:

M/M

  The SCU shall support the DIMSE Service but is not required to use it on an Association. The SCP shall support the DIMSE Service.

U/M

  The SCU may support and use the DIMSE Service. The SCP shall support the DIMSE Service.

U/U

  The SCU may support and use the DIMSE Service. The SCP may support the DIMSE Service. If the SCP does not support the DIMSE Service used by the SCU, it shall return a Failure status.

Modules and their usage in Composite IODs are defined in PS3.3. Normalized IODs are also constructed from Modules but usage is specified on an Attribute basis in this Part of the DICOM Standard. The following usage specification applies to all Attributes of Normalized IODs unless superseded by a usage specification in a particular SOP Class Specification.

The meaning and behavior of the usage specification for Attributes of Normalized IODs are as follows:

1/1

  The SCU shall provide a value for the Attribute. If the SCU does not supply a value, the SCP shall return a Failure status ("Missing Attribute," code 0120H). The SCP shall support the Attribute. The SCP shall not support null values (Attribute provided with a zero length and no value) for the Attribute.

3/1

  The SCU may retrieve or provide a value for the Attribute. The SCP shall support the Attribute. The SCP shall not support null values (Attribute provided with a zero length and no value) for the Attribute.

-/1

  The SCU's usage of the Attribute is undefined. The SCP shall support the Attribute. The SCP shall not support null values (Attribute provided with a zero length and no value) for the Attribute.

2/2

  The SCU shall retrieve or provide a value for the Attribute. The SCU shall always provide the Attribute but a null value shall be permitted (Attribute provided with a zero length and no value). The SCP shall support the Attribute and permit null values (Attribute provided with a zero length and no value) for the Attribute.

3/2

  The SCU may retrieve or provide a value for the Attribute. The SCP shall support the Attribute and permit null values (Attribute provided with a zero length and no value) for the Attribute.

-/2

  The SCU's usage of the Attribute is undefined. The SCP shall support the Attribute and permit null values (Attribute provided with a zero length and no value) for the Attribute.

3/3

  The SCU may retrieve or provide a value for the Attribute. The SCP may support the Attribute. If the SCP does not support the Attribute and it is requested by the SCU, the SCP shall return either a Failure status ("Invalid Attribute Value", code 0106H) or a Warning status ("Attribute Value out of Range", code 0116H). If the SCU provides the Attribute and the SCP does not support the Attribute and returned a failure or warning, the Attribute shall be ignored.

If the SCP usage type designation is modified by a "C" (e.g., 3/1C) the specification stated above shall be modified to include the requirement that the SCP shall support the Attribute if the specified condition is met.

For all N-CREATE, N-SET, N-GET, N-DELETE, N-ACTION and N-EVENT-REPORT operations, the SOP Class is conveyed in the request primitive in Affected SOP Class UID (0000,0002). The SOP Class UID (0008,0016) Attribute shall not be present in the Data Set.

For N-CREATE operations and N-EVENT-REPORT notifications, the SOP Instance is conveyed in Affected SOP Instance UID (0000,1000). The SOP Instance UID (0008,0018) Attribute shall not be present in the Data Set.

### Note

In some Service Classes, the SOP Class definition may override the general provision in PS3.7 that allows the SOP Instance UID to be specified or omitted in the N-CREATE request primitive, and require that the SCU be responsible for specifying the SOP Instance UID.

For N-SET, N-GET, N-ACTION and N-DELETE operations, the SOP Instance is conveyed in Requested SOP Instance UID (0000,1001). The SOP Instance UID (0008,0018) Attribute shall not be present in the data set.

# 6 DICOM Information Model

The DICOM Information Model defines the structure and organization of the information related to the communication of medical images. Figure 6-1 shows the relationships between the major structures of the DICOM Information Model.

## 6.1 Information Object Definition

An Information Object Definition (IOD) is an object-oriented abstract data model used to specify information about Real-World Objects. An IOD provides communicating Application Entities with a common view of the information to be exchanged.

Figure 6-1. Major Structures of DICOM Information Model

An IOD does not represent a specific instance of a Real-World Object, but rather a class of Real-World Objects that share the same properties. An IOD used to represent a single class of Real-World Objects is called a Normalized Information Object. An IOD that includes information about related Real-World Objects is called a Composite Information Object.

### 6.1.1 Composite IOD

A Composite IOD is an Information Object Definition that represents parts of several entities in the DICOM Model of the Real-World. (see PS3.3.) Such an IOD includes Attributes that are not inherent in the Real-World Object that the IOD represents but rather are inherent in related Real-World Objects.

These related Real-World Objects provide a complete context for the exchanged information. When an instance of a Composite IOD is communicated, this entire context is exchanged between Application Entities. Relationships between Composite IOD Instances shall be conveyed in this contextual information.

### Note

1. Actual communication of IOD Instances is via SOP Instances.

2. Whenever Composite SOP Instances are in fact related, some of the contextual information is redundant (i.e., the same information about the same Real-World Objects is contained in multiple SOP Instances).

The Composite IODs are specified in PS3.3.

### 6.1.2 Normalized IOD

A Normalized IOD is an Information Object Definition that generally represents a single entity in the DICOM Model of the Real-World.

When an instance of a Normalized IOD is communicated, the context for that instance is not actually exchanged. Instead, the context is provided through the use of pointers to related Normalized IOD Instances.

The Normalized IODs are specified in PS3.3.

## 6.2 Attributes

The Attributes of an IOD describe the properties of a Real-World Object Instance. Related Attributes are grouped into Modules that represents a higher level of semantics documented in the Module Specifications found in PS3.3.

Attributes are encoded as Data Elements using the rules, the Value Representation and the Value Multiplicity concepts specified in PS3.5. For specific Data Elements, the Value Representation and Value Multiplicity of Data Elements are specified in the Data Dictionary in PS3.6.

## 6.3 On-Line Communication and Media Storage Services

For on-line communication the DIMSE Services allow a DICOM Application Entity to invoke an operation or notification across a network or a point-to-point interface. DIMSE Services are defined in PS3.7.

For media storage interchange, Media Storage Services allow a DICOM Application Entity to invoke media storage related operations.

Media Storage Services are discussed in PS3.10.

### 6.3.1 DIMSE-C Services

DIMSE-C Services are services applicable only to a Composite IOD. DIMSE-C provides only operation services.

### 6.3.2 DIMSE-N Services

DIMSE-N Services are services applicable only to a Normalized IOD. DIMSE-N provides both operation and notification services.

## 6.4 DIMSE Service Group

A DIMSE Service Group specifies one or more operations/notifications defined in PS3.7 that are applicable to an IOD.

DIMSE Service Groups are defined in this Part of the DICOM Standard, in the specification of a Service-Object Pair Class.

## 6.5 Service-Object Pair (SOP) Class

A Service-Object Pair (SOP) Class is defined by the union of an IOD and a DIMSE Service Group. The SOP Class definition contains the rules and semantics that may restrict the use of the services in the DIMSE Service Group or the Attributes of the IOD.

The selection of SOP Classes is used by Application Entities to establish an agreed set of capabilities to support their interaction. This negotiation is performed at Association establishment time as described in PS3.7. An extended negotiation allows Application Entities to further agree on specific options within a SOP Class.

### Note

The SOP Class as defined in the DICOM Information Model is equivalent in ISO/OSI terminology to the Managed Object Class. Readers familiar with object oriented terminology will recognize the SOP Class operations (and notifications) as comprising the methods of an object class.

### 6.5.1 Normalized and Composite SOP Classes

DICOM defines two types of SOP Classes, Normalized and Composite. Normalized SOP Classes are defined as the union of a Normalized IOD and a set of DIMSE-N Services. Composite SOP Classes are defined as the union of a Composite IOD and a set of DIMSE-C Services.

### Note

SOP Class Specifications play a central role for defining DICOM conformance requirements. It allows DICOM Application Entities to select a well-defined application level subset of this Standard to which they may claim conformance. See PS3.2.

## 6.6 Association Negotiation

Association establishment is the first phase of communication between peer DICOM compliant Application Entities. The Application Entities shall use Association establishment to negotiate which SOP Classes can be exchanged and how this data will be encoded.

Association Negotiation is defined in PS3.7.

## 6.7 Service Class Specification

A Service Class Specification defines a group of one or more SOP Classes related to a specific function that is to be accomplished by communicating Application Entities. A Service Class Specification also defines rules that allow implementations to state some pre-defined level of conformance to one or more SOP Classes. Applications may conform to network SOP Classes as either a Service Class User (SCU) or Service Class Provider (SCP), and to media exchange SOP Classes as a File Set Creator (FSC), File Set Reader (FSR), or File Set Updater (FSU).

Service Class Specifications are defined in this Part of the DICOM Standard.

### Note

Network interaction between peer Application Entities work on a 'client/server model.' The SCU acts as the 'client,' while the SCP acts as the 'server'. The SCU/SCP roles are determined during Association establishment.

# 7 DICOM Model of the Real World

The DICOM view of the Real-World that identifies the relevant Real-World Objects and their relationships within the scope of the DICOM Standard is described in the DICOM Model of the Real-World Section of PS3.3.

This section also describes the DICOM Information Model that identifies the various IODs specified by the DICOM Standard and their relationship.

# A Verification Service Class (Normative)

## A.1 Overview

### A.1.1 Scope

The Verification Service Class defines a service that verifies application level communication between peer DICOM AEs. This verification is accomplished on an established Association using the C-ECHO DIMSE-C service.

## A.2 SCU/SCP Behavior

A DICOM AE, supporting the Verification SOP Class SCU role, requests verification of communication to a remote DICOM AE. This request is performed using the C-ECHO request primitive. The remote DICOM AE, supporting the Verification SOP Class SCP role, issues an C-ECHO response primitive. Upon receipt of the C-ECHO confirmation, the SCU determines that verification is complete. See PS3.7 for the specification of the C-ECHO primitives.

## A.3 DIMSE-C Service Group

The C-ECHO DIMSE-C service shall be the mechanism used to verify communications between peer DICOM AEs. The C-ECHO service and protocol parameters shall be required as defined in PS3.7.

## A.4 Verification SOP Class

The Verification SOP Class consists of the C-ECHO DIMSE-C service. No associated Information Object Definition is defined. The SOP Class UID shall be "1.2.840.10008.1.1".

No Specialized SOP Classes and/or Meta SOP Classes shall be defined for the Verification SOP Class.

## A.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The following negotiation rules apply to DICOM AEs that support the Verification SOP Class

- The Association-requester (verification SCU role) in the A-ASSOCIATE request shall convey an Abstract Syntax, in a Presentation Context, for the Verification SOP Class. The Abstract Syntax Name shall be equivalent to the Verification SOP Class UID.

- The Association-acceptor (verification SCP role) in the A-ASSOCIATE response shall accept the Abstract Syntax, in a Presentation Context, for the supported Verification SOP Class.

No Application Association Information specific to the Verification SOP Class shall be used.

## A.6 Conformance

### A.6.1 Conformance Supporting the SCU Role

Implementations that conform to the Verification SOP Class SCU role shall meet the:

- C-ECHO service requirements as defined by the DIMSE Service Group, Section A.3

- Association negotiation rules as defined in Section A.5

### A.6.2 Conformance Supporting the SCP Role

Implementations that conform to the Verification SOP Class SCP role shall meet the:

- C-ECHO operation rules as defined by the DIMSE Service Group, Section A.3

- Association negotiation rules as defined in Section A.5

### A.6.3 Conformance Statement

An implementation may conform to the Verification SOP Class as an SCU, SCP, or both. The Conformance Statement shall be in the format defined in PS3.2.

# B Storage Service Class (Normative)

## B.1 Overview

### B.1.1 Scope

The Storage Service Class defines an application-level class-of-service that facilitates the simple transfer of information Instances (objects).. It allows one DICOM AE to send images, waveforms, reports, etc., to another.

Information Object Definitions for Instances that are transferred under the Storage Service Class shall adhere to the Composite Instance IOD Information Model specified in PS3.3, and include at least the Patient, Study, and Series Information Entities.

### B.1.2 Service Definition

Two peer DICOM AEs implement a SOP Class of the Storage Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Storage Service Class are implemented using the C-STORE DIMSE-C service. C-STORE is described in PS3.7. A successful completion of the C-STORE has the following semantics:

- Both the SCU and the SCP support the type of information to be stored.

- The information is stored in some medium.

- For some time frame, the information may be accessed.

### Note

1. Support for Storage SOP Classes does not necessarily involve support for SOP Classes of the Query/Retrieve Service Class. How the information may be accessed is implementation dependent. It is required that some access method exists. This method may require an implementation dependent operation at the SCP of the Storage Service Class. The duration of the storage is also implementation dependent, but is described in the Conformance Statement of the SCP. Storage SOP Classes are intended to be used in a variety of environments: e.g., for modalities to transfer images to workstations or archives, for archives to transfer images to workstations or back to modalities, for workstations to transfer processed images to archives, etc.

2. For the JPIP Referenced Pixel Data transfer syntaxes, transfers may result in storage of incomplete information in that the pixel data may be partially or completely transferred by some other mechanism at the discretion of the SCP.

## B.2 Behavior

This Section discusses the SCU and SCP behavior for SOP Classes of the Storage Service Class. The C-STORE DIMSE-C Service shall be the mechanism used to transfer SOP Instances between peer DICOM AEs as described in PS3.7.

### B.2.1 Behavior of an SCU

The SCU invokes a C-STORE DIMSE Service with a SOP Instance that meets the requirements of the corresponding IOD. The SCU shall recognize the status of the C-STORE service and take appropriate action upon the success or failure of the service.

### Note

The appropriate action is implementation dependent. It is required that the SCU distinguish between successful and failed C-STORE responses. Appropriate action may differ according to application, but are described in the Conformance Statement of the SCU.

### B.2.2 Behavior of an SCP

An SCP of a Storage SOP Class acts as a performing DIMSE-service-user for the C-STORE Service. By performing this service successfully, the SCP indicates that the SOP Instance has been successfully stored.

### B.2.3 Statuses

Table B.2-1 defines the specific status code values that might be returned in a C-STORE response. General status code values and fields related to status code values are defined for C-STORE DIMSE Service in PS3.7.

Table B.2-1. C-STORE Status

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A7xx | (0000,0902)
| Error: Data Set does not match SOP Class | A9xx | (0000,0901) (0000,0902)
| Error: Cannot understand | Cxxx | (0000,0901) (0000,0902)
Warning | Coercion of Data Elements | B000 | (0000,0901) (0000,0902)
| Data Set does not match SOP Class | B007 | (0000,0901) (0000,0902)
| Elements Discarded | B006 | (0000,0901) (0000,0902)
Success | Success | 0000 | None

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 within the same Failure Meaning shall assign those causes specific Status Code Values within valid range specified in Table B.2-1.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table B.2-1 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.

## B.3 Association Negotiation

SCUs and SCPs of Storage SOP Classes operate on SOP Instances specific to the SOP Class. They may use the SOP Class Extended Negotiation Sub-Item defined in PS3.7. This Sub-Item allows DICOM AEs to exchange application information specific to SOP Class specifications. This is achieved by defining the Service-class-application-information field.

SCUs may use the SOP Class Common Extended Negotiation Sub-Item defined in PS3.7. This Sub-Item allows DICOM AEs to exchange information about the nature of the SOP Classes.

The SOP Class Extended Negotiation Sub-Item and SOP Class Common Extended Negotiation Sub-Item negotiation is optional for storage based SOP Classes.

The following negotiation rules apply to all DICOM SOP Classes and Specialized SOP Classes of the Storage Service Class.

The Association-requester (Storage SCU role) in the A-ASSOCIATE request shall convey:

- one Abstract Syntax, in a Presentation Context, for each supported SOP Class of the Storage Service Class

- optionally, one SOP Class Extended Negotiation Sub-Item, for each supported SOP Class of the Storage Service Class

- optionally, one SOP Class Common Extended Negotiation Sub-Item, for each supported SOP Class of the Storage Service Class

The Association-acceptor (Storage SCP role) in the A-ASSOCIATE request shall accept:

- one Abstract Syntax, in a Presentation Context, for each supported SOP Class of the Storage Service Class

- optionally, one SOP Class Extended Negotiation Sub-Item, for each supported SOP Class of the Storage Service Class

### B.3.1 Extended Negotiation

At the time of Association establishment implementations may exchange information about their respective capabilities, as described in PS3.7 and PS3.8. SCUs and SCPs may use the SOP Class Extended Negotiation Sub-Item Structure as described in PS3.7 to exchange information about the level of conformance and options supported. SCUs may use the SOP Class Common Extended Negotiation Sub-Item defined in PS3.7 to exchange information about the nature of the SOP Classes.

Extended negotiation is optional. In the event that either the SCU or the SCP does not support extended negotiation, the defaults shall apply.

#### B.3.1.1 Service-Class-Application-Information (A-ASSOCIATE-RQ)

The SOP Class Extended Negotiation Sub-item is made of a sequence of mandatory fields as defined by PS3.7. Table B.3-1 shows the format of the Service-class-application-information field of the SOP Class Extended Negotiation Sub-Item for SOP Classes of the Storage Service Class in the A-ASSOCIATE-RQ.

Table B.3-1. Service-Class-Application-Information (A-ASSOCIATE-RQ)

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Level of support | This byte field defines the supported storage level of the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values: 0 - level 0 SCP 1 - level 1 SCP 2 - level 2 SCP 3 - N/A Association-requester is SCU only If extended negotiation is not supported, the default shall have a value of 3.
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3 | Level of Digital Signature support | A Level 2 SCP may further define its behavior in this byte field. 0 - The signature level is unspecified, the AE is an SCU only, or the AE is not a level 2 SCP 1 - signature level 1 2 - signature level 2 3 - signature level 3 If extended negotiation is not supported, the default shall have a value of 0.
4 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
5 | Element Coercion | This byte field defines whether the Association-requester may coerce Data Elements. It shall be encoded as an unsigned binary integer and shall use one of the following values: 0 - does not coerce any Data Element 1 - may coerce Data Elements 2 - N/A - Association-requester is SCU only If extended negotiation is not supported, the default shall have a value of 2.
6 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.

#### B.3.1.2 Service-Class-Application-Information (A-ASSOCIATE-AC)

The SOP Class Extended Negotiation Sub-item is made of a sequence of mandatory fields as defined by PS3.7. Table B.3-2 shows the format of the Service-class-application-information field of the SOP Class Extended Negotiation Sub-Item for SOP Classes of the Storage Service Class in the A-ASSOCIATE-AC.

Table B.3-2. Service-Class-Application-Information (A-ASSOCIATE-AC)

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Level of support | This byte field defines the supported storage level of the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values: 0 - level 0 SCP 1 - level 1 SCP 2 - level 2 SCP 3 - N/A - Association-acceptor is SCU only If extended negotiation is not supported, no assumptions shall be made by the Association-requester about the capabilities of the Association-acceptor based upon this extended negotiation.
2 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
3 | Level of Digital Signature support | A Level 2 SCP may further define its behavior in this byte field. 0 - The signature level is unspecified, the AE is an SCU only, or the AE is not a level 2 SCP 1 - signature level 1 2 - signature level 2 3 - signature level 3 If extended negotiation is not supported, no assumptions shall be made by the Association-requester about the capabilities of the Association-acceptor based upon this extended negotiation.
4 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.
5 | Element Coercion | This byte field defines whether the Association-acceptor may coerce Data Elements. It shall be encoded as an unsigned binary integer and shall use one of the following values: 0 - does not coerce any Data Element 1 - may coerce Data Elements 2 - N/A - Association-acceptor is SCU only If extended negotiation is not supported, no assumptions shall be made by the Association-requester about the capabilities of the Association-acceptor based upon this extended negotiation.
6 | Reserved | This reserved field shall be sent with a value 00H but not tested to this value when received.

#### B.3.1.3 Service Class UID (A-ASSOCIATE-RQ)

SOP Class Common Extended Negotiation Sub-Item allows the SCU to convey the Service Class UID of each proposed SOP Class.

The Storage Service Class UID shall be "1.2.840.10008.4.2".

#### B.3.1.4 Related General SOP Classes (A-ASSOCIATE-RQ)

A limited set of Standard SOP Classes in the Storage Service Class are defined to have one or more Related General SOP Classes. The Related General SOP Classes may be conveyed using the SOP Class Relationship Extended Negotiation during association establishment as defined in PS3.7. Table B.3-3 identifies which Standard SOP Classes participate in this mechanism. If a Standard SOP Class is not listed in this table, Related General SOP Classes shall not be included in a Related Storage SOP Class Extended Negotiation Sub-Item.

### Note

Implementation-defined Specialized SOP Classes (see PS3.2) of the Storage Service Class may convey a Related General SOP Class.

Table B.3-3. Standard and Related General SOP Classes

SOP Class Name | Related General SOP Class Name
--- | ---
12-lead ECG Waveform Storage | General ECG Waveform Storage
Digital Mammography X-Ray Image Storage - For Presentation | Digital X-Ray Image Storage - For Presentation
Digital Mammography X-Ray Image Storage - For Processing | Digital X-Ray Image Storage - For Processing
Digital Intra-Oral X-Ray Image Storage - For Presentation | Digital X-Ray Image Storage - For Presentation
Digital Intra-Oral X-Ray Image Storage - For Processing | Digital X-Ray Image Storage - For Processing
Basic Text SR | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
Enhanced SR | Comprehensive SR
Comprehensive 3D SR
Extensible SR
Comprehensive SR | Comprehensive 3D SR
Extensible SR
Comprehensive 3D SR | Extensible SR
Procedure Log | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
Simplified Adult Echo SR | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
X-Ray Radiation Dose SR | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
Radiopharmaceutical Radiation Dose SR | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
Patient Radiation Dose SR | Enhanced SR
Comprehensive SR
Comprehensive 3D SR
Extensible SR
Acquisition Context SR | Enhanced SR (see note)
Comprehensive SR (see note)
Comprehensive 3D SR
Extensible SR
Spectacle Prescription Report | Enhanced SR
Macular Grid Thickness and Volume Report | Enhanced SR
Enhanced CT Image Storage | Legacy Converted Enhanced CT Image Storage
Enhanced MR Image Storage | Legacy Converted Enhanced MR Image Storage
Enhanced PET Image Storage | Legacy Converted Enhanced PET Image Storage

### Note

The Acquisition Context SR may be encoded as Enhanced or Comprehensive only if it does not contain stereotactic coordinates (SCOORD3D).

## B.4 Conformance

An implementation that conforms to Storage SOP Classes shall meet the:

- C-STORE Service requirements as defined in Section B.2

- Association requirements as defined in Section B.3

### Note

No SCU or SCP behavior requirements other than those in this section are specified. In particular, an SCP of the Storage SOP Classes may not attach any significance to the particular association or associations over which C-STORE operations are requested, nor the order in which C-STORE operations occur within an association. No constraints are placed on the operations an SCU may perform during any particular association, other than those defined during association negotiation. An SCP may not expect an SCU to perform C-STORE operations in a particular order.

Similarly, no semantics are attached to the closing of an Association, such as the end of a Study or Performed Procedure Step.

### B.4.1 Conformance as an SCP

#### B.4.1.1 Levels of Conformance

Three levels of conformance to the Storage SOP Classes as an SCP may be provided:

- Level 0 (Local). Level 0 conformance indicates that a user-defined subset of the Attributes of the image will be stored, and all others will be discarded. This subset of the Attributes shall be defined in the Conformance Statement of the implementer.

- Level 1 (Base). Level 1 conformance indicates that all Type 1 and 2 Attributes defined in the IOD associated with the SOP Class will be stored, and may be accessed. All other elements may be discarded. The SCP may, but is not required to validate that the Attributes of the SOP Instance meets the requirements of the IOD.

- Level 2 (Full). Level 2 conformance indicates that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition associated with the SOP Class, as well as any Standard Extended Attributes (including Private Attributes) included in the SOP Instance, will be stored and may be accessed. The SCP may, but is not required to validate that the Attributes of the SOP Instance meet the requirements of the IOD.

### Note

A Level 2 SCP may discard (not store) Type 3 Attributes that are empty (zero length and no Value), since the meaning of an empty Type 3 Attribute is the same as absence of the Attribute. See PS3.5 definition of "Type 3 Optional Data Elements".

#### B.4.1.2 Support of Additional SOP Classes

An SCP that claims conformance to Level 2 (Full) support of the Storage Service Class may accept any Presentation Context negotiation of a SOP Class that specifies the Storage Service Class during the SOP Class Common Extended Negotiation (see Section B.3.1.3), without asserting conformance to that SOP Class in its Conformance Statement.

### Note

1. The SCP may support storage of all SOP Classes of the Storage Service Class, preserving all Attributes as a Level 2 SCP.

2. This Extended Negotiation allows an SCP to determine that a private SOP Class (per Section 3.11.5 “Private SOP Class” in PS3.2 ) in a proposed Presentation Context follows the semantics of the Storage Service Class, and may be handled accordingly.

An SCP that claims conformance to Level 2 (Full) support of a Related General SOP Class may accept any Presentation Context negotiation of a SOP Class that specifies that Related General SOP Class during the SOP Class Common Extended Negotiation, without asserting conformance to that specialized SOP Class in its Conformance Statement.

### Note

1. The term "specialized" in this section is used generically, including both Implementation-defined Specialized SOP Classes and Standard SOP Classes specified in Table B.3-3.

2. The SCP may handle instances of such specialized SOP Classes using the semantics of the Related General SOP Class, but preserving all additional (potentially Type 1 or 2) Attributes as a Level 2 SCP.

3. An SCP that has access to the current content of Table B.5-1 might use that to determine acceptance of proposed Presentation Context SOP Classes. This allows an SCP, even without Extended Negotiation, to be able to identify all standard SOP Classes of the Storage Service Class. Access to Table B.5-1 may be through private means, or to the publication of PS3 on the web site of the DICOM Standards Committee. This provides an automated alternative to manually editing a table of supported Storage SOP Classes.

#### B.4.1.3 Coercion of Attributes

At any level of conformance, the SCP of the Storage Service Class may modify the values of certain Attributes in order to coerce the SOP Instance into the Query Model of the SCP. The Attributes that may be modified are shown in Table B.4-1.

Table B.4-1. Attributes Subject to Coercion

Attribute Name | Tag
--- | ---
Patient ID | (0010,0020)
Issuer of Patient ID | (0010,0021)
Other Patient IDs Sequence | (0010,1002)
Study Instance UID | (0020,000D)
Series Instance UID | (0020,000E)

The SCP of the Storage Service Class may modify the values of Code Sequence Attributes to convert from one coding scheme into another. This includes changing from deprecated values of Coding Scheme Designator (0008,0102) or Code Value (0008,0100) to currently valid values.

If an SCP performs such a modification, it shall return a C-STORE response with a status of Warning.

### Note

1. Modification of these Attributes may be necessary if the SCP is also an SCP of a Query/Retrieve SOP Classes. These SOP Classes are described in this Standard. For example, an MR scanner may be implemented to generate Study Instance UIDs for images generated on the MR. When these images are sent to an archive that is HIS/RIS aware, it may choose to change the UID of the study assigned to the study by the PACS. The mechanism by which it performs this coercion is implementation dependent.

2. An SCP may, for instance, convert Coding Scheme Designator values "SNM3" to "SRT", in accordance with the DICOM conventions for SNOMED (see PS3.16).

3. Modification of Attributes that may be used to reference a SOP Instance by another SOP Instance (such as Study Instance UID and Series Instance UID Attributes) will make that reference invalid. Modification of these Attributes is strongly discouraged.

4. Other Attributes may be modified/corrected by an SCP of a Storage SOP Class.

5. Modification of Attributes may affect digital signatures referencing the content of the SOP Instance.

#### B.4.1.4 Levels of Digital Signature

Three levels of Digital Signature support are defined for an SCP that claims conformance to Level 2 (Full) storage support:

- Signature Level 1. SCP may not preserve Digital Signatures and does not replace them.

- Signature Level 2. SCP does not preserve the integrity of incoming Digital Signatures, but does validate the signatures of SOP Instances being stored, takes implementation-specific measures for insuring the integrity of data stored, and will add replacement Digital Signatures before sending SOP Instances elsewhere.

- Signature Level 3. SCP does preserve the integrity of incoming Digital Signatures (i.e., is bit-preserving and stores and retrieves all Attributes regardless of whether they are defined in the IOD).

### B.4.2 Conformance as an SCU

The SCU shall generate only C-STORE requests with SOP Instances that meet the requirements of the IOD associated with the SOP Class.

#### B.4.2.1 SCU Fall-Back Behavior

During Association Negotiation, an application may propose a specialized SOP Class and its related general SOP Class in separate Presentation Contexts as a Storage SCU. If the Association Acceptor rejects the specialized SOP Class Presentation Context, but accepts the related general SOP Class Presentation Context, the application may send instances of the specialized SOP Class as instances of the related general SOP Class. In this fall-back behavior, the SOP Class UID of the instance shall be the UID of the related general SOP Class, and any special semantics associated with the specialized SOP Class may be lost; the SOP Instance UID shall remain the same.

### Note

The SCU may include the SOP Class UID of the original intended specialized SOP Class in the Attribute Original Specialized SOP Class UID (0008,001B) of the instance sent under the related general SOP Class. In some cases, e.g., when all intermediate storage applications are Level 2 SCPs, this may allow an ultimate receiver of the instance to recast it as an instance of the specialized SOP Class IOD. However, this transformation is not guaranteed.

### B.4.3 Conformance Statement Requirements

An implementation may conform to a SOP Class of the Storage Service Class as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

#### B.4.3.1 Conformance Statement for an SCU

The following issues shall be documented in the Conformance Statement of any implementation claiming conformance to the Storage SOP Class as an SCU:

- The behavior of the SCU in the case of a successful C-STORE response status shall be described.

- The behavior of the SCU in each case of an unsuccessful C-STORE response status shall be described.

- The behavior of the SCU in the case of a Warning status received in response to a C-STORE operation.

- Whether extended negotiation is supported.

- The optional elements that may be included in Storage SOP Instances for each IOD supported shall be listed.

- The standard and privately defined Functional Groups that may be included in Storage SOP Instances for each Multi-frame IOD that support Functional Groups.

- The behavior of the SCU in the case of a C-STORE operation using a referenced pixel data transfer syntax such as JPIP Referenced Pixel Data Transfer Syntax shall be described. This includes the duration of validity of the reference

#### B.4.3.2 Conformance Statement for an SCP

The following issues shall be documented in the Conformance Statement of any implementation claiming conformance to the Storage Service Class as an SCP:

- The level of conformance, as defined by Section B.4.1, shall be stated.

- The level of Digital Signature support, as defined by Section B.4.1, shall be stated.

- The optional elements that will be discarded (if any) shall be listed for each IOD supported.

- The mechanisms by which additional SOP Classes are dynamically supported, as defined by Section B.4.1.2, shall be stated.

- The Conformance Statement shall document the policies concerning the Attribute Lossy Image Compression (0028,2110).

- The behavior of the SCP in the case of a successful C-STORE operation shall be described. This includes the following:

  - the access method for a stored SOP Instance

  - the duration of the storage

- The meaning of each case of an unsuccessful C-STORE response status shall be described, as well as appropriate recovery action.

- The meaning of each case of a warning C-STORE response status shall be described, as well as appropriate action.

- If the SCP performs coercion on any Attributes, this shall be stated, and the conditions under which it may occur shall be described.

### B.4.4 Specialized Conformance

Implementations may provide Specialized SOP Class conformance by providing a proper superset of the SOP Instances to be stored. Implementations providing Specialized SOP Class Conformance to one of the SOP Classes defined in this Annex shall be conformant as described in the following sections and shall include within their Conformance Statement information as described in the following sections.

An implementation shall be permitted to conform as a Specialization of the standard SOP Class as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

#### B.4.4.1 Specialized SOP Class Identification

Any implementation that specializes the standard SOP Class shall define its specialization as an Allomorphic subclass of the standard SOP Class. As such, the specialization shall have its own unique SOP Class identification.

The Conformance Statement shall include a SOP Class Identification Statement as defined in PS3.2, declaring a SOP Name and SOP Class UID that identify the Specialized SOP Class. The SOP Name is not guaranteed to be unique (unless the implementer chooses to copyright it) but is provided for informal identification of the SOP Class. The SOP Class UID shall uniquely identify the Specialized SOP Class and conform to the DICOM UID requirements as specified in PS3.5.

#### B.4.4.2 Specialized Information Object Definition

The standard SOP Class may be specialized by supporting additional private Attributes. The SCU Operations Statement shall describe these specializations and be formatted as defined in PS3.2. Following this statement shall be the list of Attributes that may be sent or stored with SOP Instances.

## B.5 Standard SOP Classes

The SOP Classes in the Storage Service Class identify the Composite IODs to be stored. Table B.5-1 identifies Standard SOP Classes.

Table B.5-1. Standard SOP Classes

SOP Class Name | SOP Class UID | IOD Specification (defined in PS3.3)
--- | --- | ---
Computed Radiography Image Storage | 1.2.840.10008.5.1.4.1.1.1 | Computed Radiography Image IOD
Digital X-Ray Image Storage - For Presentation | 1.2.840.10008.5.1.4.1.1.1.1 | Digital X-Ray Image IOD (see Section B.5.1.1)
Digital X-Ray Image Storage - For Processing | 1.2.840.10008.5.1.4.1.1.1.1.1 | Digital X-Ray Image IOD (see Section B.5.1.1)
Digital Mammography X-Ray Image Storage - For Presentation | 1.2.840.10008.5.1.4.1.1.1.2 | Digital Mammography X-Ray Image IOD (see Section B.5.1.2)
Digital Mammography X-Ray Image Storage - For Processing | 1.2.840.10008.5.1.4.1.1.1.2.1 | Digital Mammography X-Ray Image IOD (see Section B.5.1.2)
Digital Intra-Oral X-Ray Image Storage - For Presentation | 1.2.840.10008.5.1.4.1.1.1.3 | Digital Intra-Oral X-Ray Image IOD (see Section B.5.1.3)
Digital Intra-Oral X-Ray Image Storage - For Processing | 1.2.840.10008.5.1.4.1.1.1.3.1 | Digital Intra-Oral X-Ray Image IOD (see Section B.5.1.3)
CT Image Storage | 1.2.840.10008.5.1.4.1.1.2 | Computed Tomography Image IOD
Enhanced CT Image Storage | 1.2.840.10008.5.1.4.1.1.2.1 | Enhanced CT Image IOD (see Section B.5.1.7)
Legacy Converted Enhanced CT Image Storage | 1.2.840.10008.5.1.4.1.1.2.2 | Legacy Converted Enhanced CT Image IOD (see Section B.5.1.7)
Ultrasound Multi-frame Image Storage | 1.2.840.10008.5.1.4.1.1.3.1 | Ultrasound Multi-frame Image IOD
MR Image Storage | 1.2.840.10008.5.1.4.1.1.4 | Magnetic Resonance Image IOD
Enhanced MR Image Storage | 1.2.840.10008.5.1.4.1.1.4.1 | Enhanced MR Image IOD (see Section B.5.1.6)
MR Spectroscopy Storage | 1.2.840.10008.5.1.4.1.1.4.2 | MR Spectroscopy IOD
Enhanced MR Color Image Storage | 1.2.840.10008.5.1.4.1.1.4.3 | Enhanced MR Color Image IOD
Legacy Converted Enhanced MR Image Storage | 1.2.840.10008.5.1.4.1.1.4.4 | Legacy Converted Enhanced MR Image IOD (see Section B.5.1.6)
Ultrasound Image Storage | 1.2.840.10008.5.1.4.1.1.6.1 | Ultrasound Image IOD
Enhanced US Volume Storage | 1.2.840.10008.5.1.4.1.1.6.2 | Enhanced US Volume IOD
Secondary Capture Image Storage | 1.2.840.10008.5.1.4.1.1.7 | SC Image Information Objection Definition
Multi-frame Single Bit Secondary Capture Image Storage | 1.2.840.10008.5.1.4.1.1.7.1 | Multi-frame Single Bit Secondary Capture Image IOD
Multi-frame Grayscale Byte Secondary Capture Image Storage | 1.2.840.10008.5.1.4.1.1.7.2 | Multi-frame Grayscale Byte Secondary Capture Image IOD
Multi-frame Grayscale Word Secondary Capture Image Storage | 1.2.840.10008.5.1.4.1.1.7.3 | Multi-frame Grayscale Word Secondary Capture Image IOD
Multi-frame True Color Secondary Capture Image Storage | 1.2.840.10008.5.1.4.1.1.7.4 | Multi-frame True Color Secondary Capture Image IOD
12-lead ECG Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.1.1 | 12-Lead Electrocardiogram IOD
General ECG Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.1.2 | General Electrocardiogram IOD
Ambulatory ECG Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.1.3 | Ambulatory Electrocardiogram IOD
Hemodynamic Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.2.1 | Hemodynamic IOD
Cardiac Electrophysiology Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.3.1 | Basic Cardiac Electrophysiology IOD
Basic Voice Audio Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.4.1 | Basic Voice Audio IOD
General Audio Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.4.2 | General Audio Waveform IOD
Arterial Pulse Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.5.1 | Arterial Pulse Waveform IOD
Respiratory Waveform Storage | 1.2.840.10008.5.1.4.1.1.9.6.1 | Respiratory Waveform IOD
Grayscale Softcopy Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.1 | Grayscale Softcopy Presentation State IOD
Color Softcopy Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.2 | Color Softcopy Presentation State IOD
Pseudo-Color Softcopy Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.3 | Pseudo-color Softcopy Presentation State IOD
Blending Softcopy Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.4 | Blending Softcopy Presentation State IOD
XA/XRF Grayscale Softcopy Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.5 | XA/XRF Grayscale Softcopy Presentation State IOD
Grayscale Planar MPR Volumetric Presentation State Storage | 1.2.840.10008.​5.​1.​4.​1.​1.​11.​6 | Planar MPR Volumetric Presentation State IOD
Compositing Planar MPR Volumetric Presentation State Storage | 1.2.840.10008.​5.​1.​4.​1.​1.​11.​7 | Planar MPR Volumetric Presentation State IOD
Advanced Blending Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.8 | Advanced Blending Presentation State IOD
Volume Rendering Volumetric Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.9 | Volume Rendering Volumetric Presentation State IOD
Segmented Volume Rendering Volumetric Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.10 | Volume Rendering Volumetric Presentation State IOD
Multiple Volume Rendering Volumetric Presentation State Storage | 1.2.840.10008.5.1.4.1.1.11.11 | Volume Rendering Volumetric Presentation State IOD
X-Ray Angiographic Image Storage | 1.2.840.10008.5.1.4.1.1.12.1 | X-Ray Angiographic Image IOD
Enhanced XA Image Storage | 1.2.840.10008.5.1.4.1.1.12.1.1 | Enhanced X-Ray Angiographic Image IOD
X-Ray Radiofluoroscopic Image Storage | 1.2.840.10008.5.1.4.1.1.12.2 | X-Ray RF Image IOD
Enhanced XRF Image Storage | 1.2.840.10008.5.1.4.1.1.12.2.1 | Enhanced X-Ray RF Image IOD
X-Ray 3D Angiographic Image Storage | 1.2.840.10008.5.1.4.1.1.13.1.1 | X-Ray 3D Angiographic Image IOD
X-Ray 3D Craniofacial Image Storage | 1.2.840.10008.5.1.4.1.1.13.1.2 | X-Ray 3D Craniofacial Image IOD
Breast Tomosynthesis Image Storage | 1.2.840.10008.5.1.4.1.1.13.1.3 | Breast Tomosynthesis Image IOD
Breast Projection X-Ray Image Storage - For Presentation | 1.2.840.10008.5.1.4.1.1.13.1.4 | Breast Projection X-Ray Image IOD
Breast Projection X-Ray Image Storage - For Processing | 1.2.840.10008.5.1.4.1.1.13.1.5 | Breast Projection X-Ray Image IOD
Intravascular Optical Coherence Tomography Image Storage - For Presentation | 1.2.840.10008.5.1.4.1.1.14.1 | Intravascular OCT IOD (see Section B.5.1.13)
Intravascular Optical Coherence Tomography Image Storage - For Processing | 1.2.840.10008.5.1.4.1.1.14.2 | Intravascular OCT IOD (see Section B.5.1.13)
Nuclear Medicine Image Storage | 1.2.840.10008.5.1.4.1.1.20 | Nuclear Medicine Image IOD
Parametric Map Storage | 1.2.840.10008.5.1.4.1.1.30 | Parametric Map IOD
Raw Data Storage | 1.2.840.10008.5.1.4.1.1.66 | Raw Data IOD
Spatial Registration Storage | 1.2.840.10008.5.1.4.1.1.66.1 | Spatial Registration IOD
Spatial Fiducials Storage | 1.2.840.10008.5.1.4.1.1.66.2 | Spatial Fiducials IOD
Deformable Spatial Registration Storage | 1.2.840.10008.5.1.4.1.1.66.3 | Deformable Spatial Registration IOD
Segmentation Storage | 1.2.840.10008.5.1.4.1.1.66.4 | Segmentation IOD
Surface Segmentation Storage | 1.2.840.10008.5.1.4.1.1.66.5 | Surface Segmentation IOD
Tractography Results Storage | 1.2.840.10008.5.1.4.1.1.66.6 | Tractography Results IOD
Real World Value Mapping Storage | 1.2.840.10008.5.1.4.1.1.67 | Real World Value Mapping IOD
Surface Scan Mesh Storage | 1.2.840.10008.5.1.4.1.1.68.1 | Surface Scan Mesh IOD
Surface Scan Point Cloud Storage | 1.2.840.10008.5.1.4.1.1.68.2 | Surface Scan Point Cloud IOD
VL Endoscopic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.1 | VL Endoscopic Image IOD
Video Endoscopic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.1.1 | Video Endoscopic Image IOD
VL Microscopic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.2 | VL Microscopic Image IOD
Video Microscopic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.2.1 | Video Microscopic Image IOD
VL Slide-Coordinates Microscopic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.3 | VL Slide-Coordinates Microscopic Image IOD
VL Photographic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.4 | VL Photographic Image IOD
Video Photographic Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.4.1 | Video Photographic Image IOD
Ophthalmic Photography 8 Bit Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.1 | Ophthalmic Photography 8 Bit Image IOD
Ophthalmic Photography 16 Bit Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.2 | Ophthalmic Photography 16 Bit Image IOD
Stereometric Relationship Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.3 | Stereometric Relationship IOD
Ophthalmic Tomography Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.4 | Ophthalmic Tomography Image IOD
Wide Field Ophthalmic Photography Stereographic Projection Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.5 | Wide Field Ophthalmic Photography Stereographic Projection Image IOD
Wide Field Ophthalmic Photography 3D Coordinates Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.6 | Wide Field Ophthalmic Photography 3D Coordinates Image IOD
Ophthalmic Optical Coherence Tomography En Face Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.7 | Ophthalmic Optical Coherence Tomography En Face Image Information Object Definition
Ophthalmic Optical Coherence Tomography B-scan Volume Analysis Storage | 1.2.840.10008.5.1.4.1.1.77.1.5.8 | Ophthalmic Optical Coherence Tomography B-scan Volume Analysis Information Object Definition
VL Whole Slide Microscopy Image Storage | 1.2.840.10008.5.1.4.1.1.77.1.6 | VL Whole Slide Microscopy Image IOD
Lensometry Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.1 | Lensometry Measurements IOD
Autorefraction Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.2 | Autorefraction Measurements IOD
Keratometry Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.3 | Keratometry Measurements IOD
Subjective Refraction Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.4 | Subjective Refraction Measurements IOD
Visual Acuity Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.5 | Visual Acuity Measurements IOD
Spectacle Prescription Report Storage | 1.2.840.10008.5.1.4.1.1.78.6 | Spectacle Prescription Report IOD
Ophthalmic Axial Measurements Storage | 1.2.840.10008.5.1.4.1.1.78.7 | Ophthalmic Axial Measurements IOD
Intraocular Lens Calculations Storage | 1.2.840.10008.5.1.4.1.1.78.8 | Intraocular Lens Calculations IOD
Macular Grid Thickness and Volume Report | 1.2.840.10008.5.1.4.1.1.79.1 | Macular Grid Thickness and Volume Report IOD
Ophthalmic Visual Field Static Perimetry Measurements Storage | 1.2.840.10008.5.1.4.1.1.80.1 | Ophthalmic Visual Field Static Perimetry Measurements IOD
Ophthalmic Thickness Map Storage | 1.2.840.10008.5.1.4.1.1.81.1 | Ophthalmic Thickness Map IOD
Corneal Topography Map Storage | 1.2.840.10008.5.1.4.1.1.82.1 | Corneal Topography Map IOD
Basic Text SR Storage | 1.2.840.10008.5.1.4.1.1.88.11 | Basic Text SR IOD
Enhanced SR Storage | 1.2.840.10008.5.1.4.1.1.88.22 | Enhanced SR IOD
Comprehensive SR Storage | 1.2.840.10008.5.1.4.1.1.88.33 | Comprehensive SR IOD
Comprehensive 3D SR Storage | 1.2.840.10008.5.1.4.1.1.88.34 | Comprehensive 3D SR IOD
Extensible SR Storage | 1.2.840.10008.5.1.4.1.1.88.35 | Extensible SR IOD
Procedure Log Storage | 1.2.840.10008.5.1.4.1.1.88.40 | Procedure Log IOD
Mammography CAD SR Storage | 1.2.840.10008.5.1.4.1.1.88.50 | Mammography CAD SR IOD
Key Object Selection Storage | 1.2.840.10008.5.1.4.1.1.88.59 | Key Object Selection Document IOD
Chest CAD SR Storage | 1.2.840.10008.5.1.4.1.1.88.65 | Chest CAD SR IOD
X-Ray Radiation Dose SR Storage | 1.2.840.10008.5.1.4.1.1.88.67 | X-Ray Radiation Dose SR IOD
Radiopharmaceutical Radiation Dose SR Storage | 1.2.840.10008.5.1.4.1.1.88.68 | Radiopharmaceutical Radiation Dose SR IOD
Colon CAD SR Storage | 1.2.840.10008.5.1.4.1.1.88.69 | Colon CAD SR IOD
Implantation Plan SR Document Storage | 1.2.840.10008.5.1.4.1.1.88.70 | Implantation Plan SR Document IOD
Acquisition Context SR Storage | 1.2.840.10008.5.​1.​4.​1.​1.​88.​71 | Acquisition Context SR IOD
Simplified Adult Echo SR Storage | 1.2.840.10008.5.​1.​4.​1.​1.​88.​72 | Simplified Adult Echo SR IOD
Patient Radiation Dose SR Storage | 1.2.840.10008.5.​1.​4.​1.​1.​88.​73 | Patient Radiation Dose SR IOD
Content Assessment Results Storage | 1.2.840.10008.5.1.4.1.1.90.1 | Content Assessment Results IOD
Encapsulated PDF Storage | 1.2.840.10008.5.1.4.1.1.104.1 | Encapsulated PDF IOD
Encapsulated CDA Storage | 1.2.840.10008.5.1.4.1.1.104.2 | Encapsulated CDA IOD
Encapsulated STL Storage | 1.2.840.10008.5.1.4.1.1.104.3 | Encapsulated STL IOD
Positron Emission Tomography Image Storage | 1.2.840.10008.5.1.4.1.1.128 | Positron Emission Tomography Image IOD
Enhanced PET Image Storage | 1.2.840.10008.5.1.4.1.1.130 | Enhanced PET Image IOD (see Section B.5.1.16)
Legacy Converted Enhanced PET Image Storage | 1.2.840.10008.5.1.4.1.1.128.1 | Legacy Converted Enhanced PET Image IOD
Basic Structured Display Storage | 1.2.840.10008.5.1.4.1.1.131 | Basic Structured Display IOD
CT Performed Procedure Protocol Storage | 1.2.840.10008.5.1.4.1.1.200.2 | CT Performed Procedure Protocol IOD
RT Image Storage | 1.2.840.10008.5.1.4.1.1.481.1 | RT Image IOD
RT Dose Storage | 1.2.840.10008.5.1.4.1.1.481.2 | RT Dose IOD
RT Structure Set Storage | 1.2.840.10008.5.1.4.1.1.481.3 | RT Structure Set IOD
RT Beams Treatment Record Storage | 1.2.840.10008.5.1.4.1.1.481.4 | RT Beams Treatment Record IOD
RT Plan Storage | 1.2.840.10008.5.1.4.1.1.481.5 | RT Plan IOD
RT Brachy Treatment Record Storage | 1.2.840.10008.5.1.4.1.1.481.6 | RT Brachy Treatment Record IOD
RT Treatment Summary Record Storage | 1.2.840.10008.5.1.4.1.1.481.7 | RT Treatment Summary Record IOD
RT Ion Plan Storage | 1.2.840.10008.5.1.4.1.1.481.8 | RT Ion Plan IOD
RT Ion Beams Treatment Record Storage | 1.2.840.10008.5.1.4.1.1.481.9 | RT Ion Beams Treatment Record IOD
RT Beams Delivery Instruction Storage | 1.2.840.10008.5.1.4.34.7 | RT Beams Delivery Instruction IOD
RT Brachy Application Setup Delivery Instruction Storage | 1.2.840.10008.5.1.4.34.10 | RT Brachy Application Setup Delivery Instruction IOD

### Note

The Generic Implant Template Storage, Implant Assembly Template Storage, and Implant Template Group Storage SOP Classes were formerly specified in this table, incorrectly since they do not use the Patient / Study / Series / Instance information model. Those have been consolidated into the Non-Patient Object Storage Service Class (see Annex GG).

### B.5.1 Specialization for Standard SOP Classes

#### B.5.1.1 Digital X-Ray Image Storage SOP Classes

The Digital X-Ray Image Storage - For Presentation SOP Class shall use the DX IOD with an Enumerated Value of FOR PRESENTATION for Presentation Intent Type (0008,0068).

The Digital X-Ray Image Storage - For Processing SOP Class shall use the DX IOD with an Enumerated Value of FOR PROCESSING for Presentation Intent Type (0008,0068).

An SCU or SCP of the Digital X-Ray Image Storage - For Processing SOP Class shall also support the Digital X-Ray Image Storage - For Presentation SOP Class.

### Note

1. The intent of this requirement is to ensure a useful level of interoperability by avoiding the situation where an SCU might support only the Digital X-Ray Image Storage - For Processing SOP Class and an SCP only the Digital X-Ray Image Storage - For Presentation SOP Class, or vice versa. The burden is therefore to support the Digital X-Ray Image Storage - For Presentation SOP Class as a "baseline".

2. The term "support" is used in this section in the sense that an SCU or SCP must be capable of sending or receiving the For Presentation SOP Class. There is no intent to imply that an SCU must always send an instance of the For Presentation SOP Class when an instance of the For Processing SOP Class is sent.

   Nor is there any intent to imply that during Association establishment, that a Presentation Context for the For Presentation SOP Class has to be proposed by the initiator. However, an association acceptor may reject a For Presentation SOP Class Presentation Context if it accepts a For Processing SOP Class Presentation Context, and prefers that SOP Class, in which case it may no longer be able to "pass on" the object later as an SCU unless it is able to generate a For Presentation object.

   It is not possible for an SCP to determine from proposed Presentation Contexts whether or not an SCU "supports" (is capable of sending) both For Processing and For Presentation SOP Class Instances. Such a determination requires a priori knowledge of the information contained in the Conformance Statement for the SCU, as well as how the SCU is configured and operated. An SCU that supports both SOP Classes may well choose to only propose one or the other during Association establishment, depending on which Instances it actually intends to send over that particular association (although the SCU must be capable of sending instances of the For Presentation SOP Class if the SCP does not accept the For Processing).

   The intent of the requirement is that if an SCU is only capable of sending the For Presentation SOP Class, any SCP will be guaranteed to be able to receive it. Conversely, if an SCP is only capable of receiving the For Presentation SOP Class, any SCU will be guaranteed to be able to send it.

#### B.5.1.2 Digital Mammography X-Ray Image Storage SOP Classes

The Digital Mammography X-Ray Image Storage - For Presentation SOP Class shall use the Digital Mammography IOD with an Enumerated Value of FOR PRESENTATION for Presentation Intent Type (0008,0068).

The Digital Mammography X-Ray Image Storage - For Processing SOP Class shall use the Digital Mammography IOD with an Enumerated Value of FOR PROCESSING for Presentation Intent Type (0008,0068).

An SCU or SCP of the Digital Mammography X-Ray Image Storage - For Processing SOP Class shall also support the Digital Mammography X-Ray Image Storage - For Presentation SOP Class.

#### B.5.1.3 Digital Intra-Oral X-Ray Image Storage SOP Classes

The Digital Intra-Oral X-Ray Image Storage - For Presentation SOP Class shall use the Digital Intra-Oral X-Ray IOD with an Enumerated Value of FOR PRESENTATION for Presentation Intent Type (0008,0068).

The Digital Intra-Oral X-Ray Image Storage - For Processing SOP Class shall use the Digital Intra-Oral X-Ray IOD with an Enumerated Value of FOR PROCESSING for Presentation Intent Type (0008,0068).

An SCU or SCP of the Digital Intra-Oral X-Ray Image Storage - For Processing SOP Class shall also support the Digital Intra-Oral X-Ray Image Storage - For Presentation SOP Class.

#### B.5.1.4 Softcopy Presentation State Storage SOP Classes

See Annex N.

#### B.5.1.5 Structured Reporting Storage SOP Classes

The requirements of Annex O apply to the following SOP Classes:

- Basic Text SR

- Extensible SR, Enhanced SR, and SOP Classes for which it is the Related General SOP Class

- Comprehensive 3D SR, Comprehensive SR, and SOP Classes for which they are the Related General SOP Classes

- Mammography CAD SR

- Chest CAD SR

- Procedure Log

- X-Ray Radiation Dose SR

- Radiopharmaceutical Radiation Dose SR

- Patient Radiation Dose SR

- Spectacle Prescription Report

- Colon CAD SR

- Macular Grid Thickness and Volume Report

- Implantation Plan SR Document

- Acquisition Context SR

- Simplified Adult Echo SR

Annex O requirements do not apply to the Key Object Selection Document SOP Class.

#### B.5.1.6 Enhanced MR Image Storage and Legacy Converted Enhanced MR Image Storage SOP Class

An SCP of the Enhanced MR Image Storage or Legacy Converted Enhanced MR Image Storage SOP Class shall also support the Grayscale Softcopy Presentation State Storage SOP Class.

### Note

This requirement is present in order to allow the exchange of graphical annotations created by an acquisition or conversion device.

#### B.5.1.7 Enhanced CT Image Storage and Legacy Converted Enhanced CT Image Storage SOP Class

An SCP of the Enhanced CT Image Storage or Legacy Converted Enhanced CT Image Storage SOP Class shall also support the Grayscale Softcopy Presentation State Storage SOP Class.

### Note

This requirement is present in order to allow the exchange of graphical annotations created by an acquisition or conversion device.

#### B.5.1.8 Enhanced MR Color Image Storage SOP Class

An SCP of the Enhanced MR Color Image Storage SOP Class shall also support the Color Softcopy Presentation State Storage SOP Class.

### Note

This requirement is present in order to allow the exchange of graphical annotations created by an acquisition device.

#### B.5.1.9 Basic Structured Display

An SCU of the Basic Structured Display Storage SOP Class that creates SOP Instances of the Class shall identify in its Conformance Statement the Composite Storage SOP Classes and Softcopy Presentation State Storage SOP Classes that are also supported by the SCU, and may be referenced by Basic Structured Display SOP Instances it creates. It shall identify in its Conformance Statement the values it may use in the Attributes Image Box Layout Type (0072,0304) and Type of Synchronization (0072,0434).

An SCP of the Basic Structured Display Storage SOP Class, when rendering SOP Instances of the Class, shall preserve the aspect ratio specified by the Nominal Screen Definition Sequence (0072,0102) Attributes Number of Vertical Pixels (0072,0104) and Number of Horizontal Pixels (0072,0106) without clipping.

### Note

1. The SCP is not required to display using the exact number of vertical and horizontal pixels. The SCP may use as much of its display screen as it desires, while maintaining the Structured Display aspect ratio.

2. If the display screen has a different aspect ratio, the positioning of the display on the screen is unspecified (centered, left or right justified, top or bottom justified).

An SCP of the Basic Structured Display Storage SOP Class that is capable of rendering SOP Instances of the Class shall identify in its Conformance Statement the Composite Storage SOP Classes and Softcopy Presentation State Storage SOP Classes that are also supported by the SCP, and will be rendered when referenced by Basic Structured Display SOP Instances for display. It shall specify in its Conformance Statement the user display controls and interactions for the values of Image Box Layout Type (0072,0304) and Type of Synchronization (0072,0434) that it supports. It shall identify in its Conformance Statement its behavior when encountering a referenced Presentation State or other Composite Storage SOP Instance whose display it does not support, or an unsupported value of Image Box Layout Type or Type of Synchronization; such behavior shall include at a minimum a display to the user of the nature of the incompatibility.

#### B.5.1.10 Implant Template Storage SOP Classes

See Annex GG.

### Note

The requirements of this section have been consolidated into the Non-Patient Object Storage Service Class (see Section GG.6.3).

#### B.5.1.11 Ophthalmic Axial Measurements Storage SOP Class

Ophthalmic axial measurements devices are used in the preoperative assessment of every cataract surgery patient. Ophthalmic axial measurements SOP Classes support ophthalmic axial measurements devices.

For a device that is both a SCU and a SCP of the Ophthalmic Axial Measurements Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for Ophthalmic Axial Measurements Storage SOP Classes:

- A SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.12 IOL Calculation Storage SOP Class

IOL (intraocular lens) calculation is used in the preoperative assessment of every cataract surgery patient. IOL Calculation SOP Classes support IOL calculation software, which may be located either on ophthalmic axial measurement devices or on a separate computer.

For a device that is both a SCU and a SCP of the IOL Calculation Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for IOL Calculation Storage SOP Classes:

- A SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.13 Intravascular OCT Image Storage SOP Classes

The Intravascular OCT Image Storage - For Presentation SOP Class shall use the IVOCT IOD with an Enumerated Value of FOR PRESENTATION for Presentation Intent Type (0008,0068).

The Intravascular OCT Image Storage - For Processing SOP Class shall use the IVOCT IOD with an Enumerated Value of FOR PROCESSING for Presentation Intent Type (0008,0068).

An SCU or SCP of the Intravascular OCT Image Storage - For Processing SOP Class shall also support the Intravascular OCT Image Storage - For Presentation SOP Class.

### Note

1. The intent of this requirement is to ensure a useful level of interoperability by avoiding the situation where an SCU might support only the Intravascular OCT Image Storage - For Processing SOP Class and an SCP only the Intravascular OCT Image Storage - For Presentation SOP Class, or vice versa. The burden is therefore to support the Intravascular OCT Image Storage - For Presentation SOP Class as a "baseline".

2. The term "support" is used in this section in the sense that an SCU or SCP must be capable of sending or receiving the For Presentation SOP Class. There is no intent to imply that an SCU must always send an instance of the For Presentation SOP Class when an instance of the For Processing SOP Class is sent.

   Nor is there any intent to imply that during Association establishment, that a Presentation Context for the For Presentation SOP Class has to be proposed by the initiator. However, an association acceptor may reject a For Presentation SOP Class Presentation Context if it accepts a For Processing SOP Class Presentation Context, and prefers that SOP Class, in which case it may no longer be able to "pass on" the object later as an SCU unless it is able to generate a For Presentation object.

   It is not possible for an SCP to determine from proposed Presentation Contexts whether or not an SCU "supports" (is capable of sending) both For Processing and For Presentation SOP Class Instances. Such a determination requires a priori knowledge of the information contained in the Conformance Statement for the SCU, as well as how the SCU is configured and operated. An SCU that supports both SOP Classes may well choose to only propose one or the other during Association establishment, depending on which Instances it actually intends to send over that particular association (although the SCU must be capable of sending instances of the For Presentation SOP Class if the SCP does not accept the For Processing).

   The intent of the requirement is that if an SCU is only capable of sending the For Presentation SOP Class, any SCP will be guaranteed to be able to receive it. Conversely, if an SCP is only capable of receiving the For Presentation SOP Class, any SCU will be guaranteed to be able to send it.

#### B.5.1.14 Ophthalmic Thickness Map Storage SOP Class

The Ophthalmic Thickness Map SOP Class encodes a topographic representation of the thickness/height measurements of the posterior eye.

For a device that is both a SCU and a SCP of the Ophthalmic Thickness Map Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for Ophthalmic Thickness Map Storage SOP Classes:

- A SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.15 Enhanced PET Image Storage and Legacy Converted Enhanced PET Image Storage SOP Class

An SCP of the Enhanced PET Image Storage or Legacy Converted Enhanced PET Image Storage SOP Class shall also support the Grayscale Softcopy Presentation State Storage SOP Class.

### Note

This requirement is present in order to allow the exchange of graphical annotations created by an acquisition or conversion device.

#### B.5.1.16 Enhanced PET Image Storage SOP Classes

An SCP of the Enhanced PET Image Storage SOP Class shall also support the Grayscale Softcopy Presentation State Storage SOP Class.

### Note

This requirement is present in order to allow the exchange of graphical annotations created by an acquisition device.

#### B.5.1.17 Corneal Topography Map Storage SOP Class

The Corneal Topography Map SOP Class encodes a topographic representation of the curvature and/or elevation measurements of corneal anterior and posterior surfaces (e.g., maps that display corneal curvatures, corneal elevations, and corneal power, etc.).

For a device that is both a SCU and a SCP of the Corneal Topography Map Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for Corneal Topography Map Storage SOP Classes:

- A SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.18 Breast Projection X-Ray Image Storage SOP Classes

The Breast Projection X-Ray Image Storage - For Presentation SOP Class shall use the Breast Projection X-Ray Image IOD with an Enumerated Value of FOR PRESENTATION for Presentation Intent Type (0008,0068).

The Breast Projection X-Ray Image Storage - For Processing SOP Class shall use the Breast Projection X-Ray Image IOD with an Enumerated Value of FOR PROCESSING for Presentation Intent Type (0008,0068).

An SCU or SCP of the Breast Projection X-Ray Image Storage - For Processing SOP Class shall also support the Breast Projection X-Ray Image Storage - For Presentation SOP Class.

#### B.5.1.19 Planar MPR Volumetric Presentation State Storage SOP Classes

The requirements of Section FF.2.1.1 apply to the following SOP Classes:

- Grayscale Planar MPR Volumetric Presentation State Storage

- Compositing Planar MPR Volumetric Presentation State Storage

The Grayscale Planar MPR Volumetric Presentation State Storage SOP Class shall use the Planar MPR Volumetric Presentation State IOD with an Enumerated Value of MONOCHROME for Pixel Presentation (0008,9205) and shall have only a single item in the Volumetric Presentation State Input Sequence (0070,1201).

The Compositing Planar MPR Volumetric Presentation State Storage SOP Class shall use the Planar MPR Volumetric Presentation State IOD with an Enumerated Value of TRUE COLOR for Pixel Presentation (0008,9205).

#### B.5.1.20 Content Assessment Results Storage SOP Classes

An SCU of the Content Assessment Results Storage SOP Class that creates SOP Instances of the Class shall identify in its Conformance Statement the criteria for setting the Observation Significance (0082,0008).

#### B.5.1.21 CT Performed Procedure Protocol Storage SOP Class

The CT Performed Procedure Protocol Storage SOP Class encodes the acquisition and reconstruction protocol parameter values used during a specific performed CT procedure and related details.

For a device that is both a SCU and a SCP of the CT Performed Procedure Protocol Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for CT Performed Procedure Protocol Storage SOP Classes:

- A SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.22 Raw Data Storage SOP Class

For a device that is both a SCU and a SCP of the Raw Data Storage SOP Class, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for the Raw Data Storage SOP Class:

- An SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

#### B.5.1.23 Enhanced Multi-Frame Image SOP Classes

An SCP of any of the Enhanced Multi-Frame Image SOP Classes that makes SOP Instances available through the Enhanced Multi-Frame Image Conversion Extended Negotiation of the Query/Retrieve Service Class (see Section C.3.5 “New Instance Creation for Enhanced Multi-Frame Image Conversion”) shall provide Level 2 (Full) Storage SCP Conformance.

### Note

Effective use of the Image Conversion option requires the storage of Type 3 Attributes.

#### B.5.1.24 Volume Rendering Volumetric Presentation State Storage SOP Classes

The requirements of Section FF.2.1.2 apply to the following SOP Classes:

- Volume Rendering Volumetric Presentation State SOP Class

- Segmented Volume Rendering Volumetric Presentation State SOP Class

- Multiple Volume Rendering Volumetric Presentation State SOP Class

The Volume Rendering Volumetric Presentation State Storage SOP Class shall use the Volume Rendering Volumetric Presentation State IOD and include a single item in Volumetric Presentation State Input Sequence (0070,1201) and a single item in Volume Stream Sequence (0070,1A08). Also, the value of Crop (0070,1204) shall be NO.

The Segmented Volume Rendering Volumetric Presentation State Storage SOP Class shall use the Volume Rendering Volumetric Presentation State IOD and include a single item in Volume Stream Sequence (0070,1A08).

The Multiple Volume Rendering Volumetric Presentation State Storage SOP Class shall use the Volume Rendering Volumetric Presentation State IOD and include two or more items in Volume Stream Sequence (0070,1A08).

## B.6 Retired Standard SOP Classes

The SOP Classes in Table B.6-1 were defined in previous versions of the DICOM Standard. They are now retired and have been replaced by new standard SOP Classes shown in Table B.5-1.

### Note

Usage of the retired SOP Classes is permitted by DICOM. However, new implementations are strongly encouraged to implement the newer SOP Classes.

Table B.6-1. Retired Standard SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Nuclear Medicine Image Storage | 1.2.840.10008.5.1.4.1.1.5
Ultrasound Image Storage | 1.2.840.10008.5.1.4.1.1.6
Ultrasound Multi-frame Image Storage | 1.2.840.10008.5.1.4.1.1.3
X-Ray Angiographic Bi-plane Image Storage | 1.2.840.10008.5.1.4.1.1.12.3

# C Query/Retrieve Service Class (Normative)

## C.1 Overview

### C.1.1 Scope

The Query/Retrieve Service Class defines an application-level class-of-service that facilitates the simple management of Composite Object Instances in a manner functionally similar to ACR-NEMA 300-1988. The types of queries that are allowed are not complex. This Service Class is not intended to provide a comprehensive generalized database query mechanism such as SQL. Instead, the Query/Retrieve Service Class is focused towards basic Composite Object Instance information queries using a small set of common Key Attributes.

In addition, the Query/Retrieve Service Class provides the ability to retrieve/transfer a well-identified set of Composite Object Instances. The retrieve/transfer capability allows a DICOM AE to retrieve Composite Object Instances from a remote DICOM AE or request the remote DICOM AE to initiate a transfer of Composite Object Instances to another DICOM AE.

### Note

Functional similarity to ACR-NEMA 300-1988 facilitates the migration to DICOM.

An Enhanced Multi-Frame Image Conversion Extended Negotiation option allows the Query/Retrieve Service Class to access Classic single-frame images that have been converted to Enhanced multi-frame images, or vice-versa. This is achieved by providing alternative "views" of studies, such that:

- the default view provides the images in the form they were received,

- a Classic single-frame "view" provides images as Classic single frame (that were received that way or have been converted from Enhanced multi-frame),

- an Enhanced multi-frame "view" provides images as Enhanced multi-frame (that were received that way or have been converted to Enhanced multi-frame).

A query or retrieval above the IMAGE level does not show or return duplicate information (two sets of images). The SCU may request the default, enhanced multi-frame or Classic single frame view. For each view, referential integrity is required to be consistent within the scope of the Patient and that view; i.e., references to UIDs will be converted in all Instances, not only within converted images.

### Note

1. The Classic single-frame view is not intended as an alternative to the Frame Level Retrieve SOP Classes defined in Annex Y. Enhanced Image Storage SOP Classes and Frame Level Retrieve SOP Classes should be used together since they support a unified view of the relationships between instances through a common set of UIDs.

2. In the Enhanced view, Instances that have no Enhanced equivalent will be returned in their original form but with referential integrity related changes.

### C.1.2 Conventions

The following conventions are used to define the types of keys used in Query/Retrieve Information Models.

Table C.1.2-1. Key Type Conventions for Query/Retrieve Information Models

Symbol | Description
--- | ---
U | Unique Key Attribute
R | Required Key Attribute
O | Optional Key Attribute

### C.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of stored Composite Object Instances. This information is organized into a well defined Query/Retrieve Information Model. The Query/Retrieve Information Model shall be a standard Query/Retrieve Information Model, as defined in this Annex of the DICOM Standard.

Queries and Retrievals are implemented against well defined Information Models. A specific SOP Class of the Query/Retrieve Service Class consists of an Information Model Definition and a DIMSE-C Service Group. In this Service Class, the Information Model plays a role similar to an Information Object Definition (IOD) of most other DICOM Service Classes.

### C.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Query/Retrieve Service Class are implemented using the DIMSE-C C-FIND, C-MOVE, and C-GET services as defined in PS3.7.

Both a baseline and extended behavior is defined for the DIMSE-C C-FIND, C-MOVE, and C-GET services. Baseline behavior specifies a minimum level of conformance for all implementations to facilitate interoperability. Extended behavior enhances the baseline behavior to provide additional features that may be negotiated independently at Association establishment time.

The following descriptions of the DIMSE-C C-FIND, C-MOVE, and C-GET services provide a brief overview of the SCU/SCP semantics:

1. A C-FIND service conveys the following semantics:

   - The SCU requests that the SCP perform a match of all the keys specified in the Identifier of the request, against the information it possesses, to the level (E.g. Patient, Study, Series, or Composite Object Instance) specified in the request.

     ### Note

     In this Annex, the term "Identifier" refers to the Identifier service parameter of the C-FIND, C-MOVE, or C-GET service as defined in PS3.7.

   - The SCP generates a C-FIND response for each match with an Identifier containing the values of all key fields and all known Attributes requested. All such responses will contain a status of Pending. A status of Pending indicates that the process of matching is not complete.

   - When the process of matching is complete a C-FIND response is sent with a status of Success and no Identifier.

   - A Refused or Failed response to a C-FIND request indicates that the SCP is unable to process the request.

   - The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND service. The SCP will interrupt all matching and return a status of Canceled.

2. A C-MOVE service conveys the following semantics:

   - The SCU supplies Unique Key values to identify an entity at the level of the retrieval. The SCP of the C-MOVE initiates C-STORE sub-operations for the corresponding storage SOP Instances identified by Unique Key values. These C-STORE sub-operations occur on a different Association than the C-MOVE service. The SCP role of the Query/Retrieve SOP Class and the SCU role of the Storage SOP Class may be performed by different applications that may or may not reside on the same system. Initiation mechanism of C-STORE sub-operations is outside of the scope of DICOM standard.

     ### Note

     This does not imply that they use the same AE Title. See Section C.6.1.2.2.2 and Section C.6.2.2.2.2 for the requirements to the C-MOVE SCP conformance.

   - The SCP may optionally generate responses to the C-MOVE with status equal to Pending during the processing of the C-STORE sub-operations. These C-MOVE responses indicate the number of Remaining C-STORE sub-operations and the number of C-STORE sub-operations returning the status of Success, Warning, and Failed.

   - When the number of Remaining C-STORE sub-operations reaches zero, the SCP generates a final response with a status equal to Success, Warning, Failed, or Refused. This response may indicate the number of C-STORE sub-operations returning the status of Success, Warning, and Failed. If the status of a C-STORE sub-operation was Failed a UID List will be returned.

   - The SCU may cancel the C-MOVE service by issuing a C-MOVE-CANCEL request at any time during the processing of the C-MOVE. The SCP terminates all incomplete C-STORE sub-operations and returns a status of Canceled.

3. A C-GET service conveys the following semantics:

   - The SCU supplies Unique Key values to identify an entity at the level of the retrieval. The SCP generates C-STORE sub-operations for the corresponding storage SOP Instances identified by the Unique Key values. These C-STORE sub-operations occur on the same Association as the C-GET service and the SCU/SCP roles will be reversed for the C-STORE.

   - The SCP may optionally generate responses to the C-GET with status equal to Pending during the processing of the C-STORE sub-operations. These C-GET responses indicate the number of Remaining C-STORE sub-operations and the number of C-STORE sub-operations returning the status of Success, Warning, and Failed.

   - When the number of Remaining C-STORE sub-operations reaches zero, the SCP generates a final response with a status equal to Success, Warning, Failed, or Refused. This response may indicate the number of C-STORE sub-operations returning the status of Success, Warning, and Failed. If the status of a C-STORE sub-operation was Failed a UID List will be returned.

   - The SCU may cancel the C-GET service by issuing a C-GET-CANCEL request at any time during the processing of the C-GET. The SCP terminates all incomplete C-STORE sub-operations and returns a status of Canceled.

## C.2 Query/Retrieve Information Model Definition

The Query/Retrieve Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

### Note

This SOP Class identifies the class of the Query/Retrieve Information Model (i.e., not the SOP Class of the stored SOP Instances for which the SCP has information).

Information Model Definitions for standard SOP Classes of the Query/Retrieve Service Class are defined in this Annex. A Query/Retrieve Information Model Definition contains:

- Entity-Relationship Model Definition

- Key Attributes Definition

### C.2.1 Entity-Relationship Model Definition

For any Query/Retrieve Information Model, an Entity-Relationship Model defines a hierarchy of entities, with Attributes defined for each level in the hierarchy (e.g., Patient, Study, Series, Composite Object Instance).

### C.2.2 Attributes Definition

Attributes shall be defined at each level in the Entity-Relationship Model. An Identifier in a C-FIND, C-MOVE, or C-GET command shall contain values to be matched against the Attributes of the Entities in a Query/Retrieve Information Model. For any query, the set of entities for which Attributes are returned, shall be determined by the set of Key Attributes specified in the Identifier that have corresponding matches on entities managed by the SCP associated with the query.

#### C.2.2.1 Attribute Types

All Attributes of entities in a Query/Retrieve Information Model shall be either a Unique Key, Required Key, or Optional Key. The term Key Attributes refers to Unique, Required, and Optional Key Attributes.

##### C.2.2.1.1 Unique Keys

At each level in the Entity-Relationship Model, one Attribute shall be defined as a Unique Key. A single value in a Unique Key Attribute shall uniquely identify a single entity at a given level. That is, two entities at the same level may not have the same Unique Key value.

C-FIND, C-MOVE, and C-GET SCPs shall support existence and matching of all Unique Keys defined by a Query/Retrieve Information Model. All entities managed by C-FIND, C-MOVE, and C-GET SCPs shall have a specific non-zero length Unique Key value.

Unique Keys may be contained in the Identifier of a C-FIND request. Unique Keys shall be contained in the Identifier of C-MOVE and C-GET requests.

##### C.2.2.1.2 Required Keys

At each level in the Entity-Relationship Model, a set of Attributes shall be defined as Required Keys. Required Keys imply the SCP of a C-FIND shall support matching based on a value contained in a Required Key of the C-FIND request. Multiple entities may have the same value for Required Keys. That is, a distinct value in a Required Key shall not necessarily identify a single entity at the level of the key.

C-FIND SCPs shall support existence and matching of all Required Keys defined by a Query/Retrieve Information Model. If a C-FIND SCP manages an entity with a Required Key of zero length, the value is considered unknown and all matching against the zero length Required Key shall be considered a successful match.

Required Keys may be contained in the Identifier of a C-FIND request. Required Keys shall not be contained in the Identifier of C-MOVE and C-GET requests.

##### C.2.2.1.3 Optional Keys

At each level in the Entity-Relationship Model, a set of Attributes shall be defined as Optional Keys.

Optional Keys contained in the Identifier of a C-FIND request may have three different types of behavior depending on support for existence and/or matching by the C-FIND SCP. If the C-FIND SCP:

- does not support the existence of the Optional Key, then the Attribute shall not be returned in C-FIND responses

- supports the existence of the Optional Key but does not support matching on the Optional Key, then the Optional Key shall be processed in the same manner as a zero length Required Key. That is, the value specified to be matched for the Optional Key is ignored but a value may be returned by the SCP for this Optional Key.

- supports the existence and matching of the Optional Key, then the Optional Key shall be processed in the same manner as a Required Key.

### Note

1. C-FIND SCU may not assume an Optional Key with non-zero length will be processed in the same manner as a Required Key. The Conformance Statement of the C-FIND SCP shall list the Optional Keys that are supported.

2. Optional Keys are differentiated from Required Keys in that Optional Keys may or may not be supported for existence and/or matching by C-FIND SCPs. Whereas, Required Keys must always be supported by C-FIND SCPs.

Optional Keys may be contained in the Identifier of a C-FIND request. Optional Keys shall not be contained in the Identifier of C-MOVE and C-GET requests.

#### C.2.2.2 Attribute Matching

The following types of matching may be performed on Key Attributes in the Query/Retrieve Service Class:

- Single Value Matching

- List of UID Matching

- Universal Matching

- Wild Card Matching

- Range Matching

- Sequence Matching

Matching requires special characters (i.e., "*","?","-", "=" and "\"), which need not be part of the character repertoire for the VR of the Key Attributes.

### Note

1. For example, the "-" character is not valid for the DA, DT and TM VRs but is used for range matching.

2. When character sets other than the default character repertoire are used, then the rules in PS3.5 apply, such as with respect to the use of the 05/12 "\" (BACKSLASH) (in ISO IR 6) or 05/12 "¥" (YEN SIGN) (in ISO IR 14).

The total length of the Key Attribute may exceed the length as specified in the VR in PS3.5. The Value Multiplicity (VM) may be larger than the VM specified in PS3.6 for the Key Attribute, as defined for particular Matching Type.

The Specific Character Set (0008,0005) Attribute may be present in the Identifier but is never matched. Rather, it specifies how other Attributes are encoded in the Request and Response Identifiers.

It may influence how matching of other Attributes is performed. If Specific Character Set (0008,0005) is absent, then the default character repertoire shall be used. Specific Character Set (0008,0005) shall not have a zero length value.

Specific Character Set (0008,0005) may have multiple values if escape sequences are used to switch between character repertoires within values.

If the SCP does not support the value(s) of Specific Character Set (0008,0005) in the Request Identifier, then the manner in which matching is performed is undefined and shall be specified in the conformance statement.

### Note

1. If an SCU sends a Request Identifier with a single byte character set not supported by the SCP, then it is likely, but not required, that the SCP will treat unrecognized characters as wild cards and match only on characters in the default repertoire, and return a response in the default repertoire.

2. Some Specific Character Set values are used with multi-component group person names (e.g., single-byte, ideographic and phonetic and phonetic component groups separated by an "=" (3DH) character), which may also affect the behavior of literal string matching.

The Timezone Offset From UTC (0008,0201) Attribute may be present in the Identifier but is not matched if Timezone query adjustment is negotiated. If Timezone query adjustment is negotiated, it specifies how Attribute values of VR of DT and TM (including related Attribute values of VR of DA, if present) are interpreted in the Request and Response Identifiers if those values lack a specific time zone offset specification.

##### C.2.2.2.1 Single Value Matching

If the value specified for a Key Attribute in a request is non-zero length and if it is:

1. not of VR of DA, TM or DT and contains no wild card characters

2. of VR of DA, TM or DT and contains a single value with no "-"

then single value matching shall be performed. Except for Attributes with a PN VR, only entities with values that match exactly the value specified in the request shall match. This matching is case-sensitive, i.e., sensitive to the exact encoding of the key Attribute value in character sets where a letter may have multiple encodings (e.g., based on its case, its position in a word, or whether it is accented).

###### C.2.2.2.1.1 Attributes of VR of PN

For Attributes with a PN VR (e.g., Patient Name (0010,0010)), an application may perform literal matching that is either case-sensitive, or that is insensitive to some or all aspects of case, position, accent, or other character encoding variants.

### Note

For multi-component names, the component group delimiter "=" (3DH) may be present in the Key Attribute value, but may give unexpected results if the SCP does not support matching on separate components but interprets the entire value literally as a single string. E.g., "Wang^XiaoDong=王^小東" may or may not match "Wang^XiaoDong" or "王^小東"; wild card matching without the component group delimiter, such as "*Wang^XiaoDong*" or "*王^小東 *" may be necessary.

If extended negotiation of fuzzy semantic matching rather than literal matching of PN VR is successful, not only may matching be insensitive to case, position, accent, and character encoding (including combining characters), but in addition other techniques such as phonetic matching may be applied.

### Note

1. Matching of PN Attributes may be accent-insensitive, as specified in the conformance statement. Accent-insensitive matching would successfully match, for instance, a query character "SMALL LETTER a" (06/01 in the default ISO-IR 6) with

   - "SMALL LETTER a WITH GRAVE ACCENT" (14/00 in ISO-IR 100),

   - "SMALL LETTER a WITH TILDE" (14/03 in ISO-IR 100),

   - "SMALL LETTER a WITH BREVE" (14/03 in ISO-IR 101), and

   - "CAPITAL LETTER a WITH ACUTE ACCENT" (12/01 in ISO-IR 100) (if matching is also case-insensitive),

   but would not match 14/00 in ISO-IR 101, which is "SMALL LETTER r WITH ACUTE ACCENT". Matching to particular bit-combinations is specific to each supported character set (note the difference in meaning of 14/00), and should be described in the conformance statement.

2. An SCU application may elect to perform additional filtering of the responses by applying the matching rules itself. In the event that both the SCU and SCP are applying the matching rules, this process will be successful as long as literal matching is performed by both, and any additional SCU filtering is insensitive to case, position, accent, or other character encoding variants.

However if fuzzy semantic matching of PN Attributes has been negotiated, matching by the SCP may result in responses that are not obviously related to the request, hence care should be taken if any additional filtering of responses is performed by the SCU. For example, if phonetic matching is performed, a query for "Swain" might well return "Swayne", or if name component order insensitive matching is performed, a query for "Smith^Mary" might well return "Mary^Smith" or "Mary Smith" or "Smith, Mary". Fuzzy semantic matching may also take into account separate single-byte, ideographic and phonetic name component groups.

###### C.2.2.2.1.2 Attributes of VR of PN, AE, LO, SH, ST, LT and UT

The PN, AE, LO, SH, ST, LT, and UT VRs allow the presence of wild card matching characters "*" and "?". Single value matching against such characters is not supported. See Section C.2.2.2.4.

###### C.2.2.2.1.3 Attributes of VR of DA, DT or TM

If the Timezone Offset From UTC (0008,0201) Attribute is present in the Identifier and Timezone query adjustment was negotiated, it shall be used to adjust values of Attributes of VR of TM (and associated Attributes of VR of DA, if present) from the local timezone to UTC. It shall also adjust values of Attributes of VR of DT that do not specify a timezone offset. The encoding and semantics of the Timezone Offset From UTC (0008,0201) Attribute shall be as defined in the SOP Common Module in PS3.3.

The manner in which matching is performed is implementation dependent and shall be specified in the conformance statement.

### Note

1. This definition implies that values of VR of TM, DA and DT are matched by their meaning, not as literal strings. For example:

   - the DT "19980128103000.0000" matches "19980128103000"

   - the DT "19980128103000" with no timezone offset matches "19980128073000" with timezone offset "-0300"

   - the TM "2230" matches "223000"

2. If an application is concerned about how single value matching of dates and times is performed by another application, it may consider using range matching instead, which is always performed by meaning, with both values in the range the same.

3. Exclusion of the "-" character for single value matching implies that a Key Attribute with a VR of DT may not contain a negative offset from Universal Coordinated Time (UTC) if single value matching is intended. Use of the "-" character in values of VR of TM, DA and DT indicates range matching.

4. If an application is in a local time zone that has a negative offset then it cannot perform single value matching using a local time notation. Instead, it can convert the Key Attribute value to UTC and use an explicit suffix of "+0000".

##### C.2.2.2.2 List of UID Matching

A List of UIDs is encoded by using the value multiplicity operator, backslash ("\"), as a delimiter between UIDs. Each item in the list shall contain a single UID value. Each UID in the list contained in the Identifier of the request may generate a match.

### Note

A list of single values is encoded exactly as a VR of UI and a VM of Multiple (see PS3.5).

##### C.2.2.2.3 Universal Matching

If the value specified for a Key Attribute in a request is zero length, then all entities shall match this Attribute. An Attribute that contains a Universal Match specification in a C-FIND request provides a mechanism to request the selected Attribute value be returned in corresponding C-FIND responses.

##### C.2.2.2.4 Wild Card Matching

If the Attribute is not of VR of DA, DT, TM, SL, SS, US, UL, FL, FD, OB, OW, OD, OF, OL, UN, DS, IS, AS, UI and the value specified in the request contains any occurrence of an "*" or a "?", then "*" shall match any sequence of characters (including a zero length value) and "?" shall match any single character. This matching is case sensitive, except for Attributes with a PN VR (e.g., Patient Name (0010,0010)).

For Attributes with a PN VR, including the case of extended negotiation of fuzzy semantic matching, wild card matching is implementation dependent and shall be specified in the conformance statement.

### Note

1. Wild card matching on a value of "*" is equivalent to universal matching.

2. The wild card matching method specified by DICOM might not be supported by some non-DICOM multi-byte character text processors.

3. For multi-component group names, the component group delimiter "=" (3DH) may be present in the Key Attribute value, but may give unexpected results if the SCP does not support matching on separate components but interprets the entire value literally. E.g., "*=*" or "*=*=*" may or may not return all strings, and hence is not equivalent to "*", nor to universal matching.

4. Using attributes with VR of AE, LO, PN and SH as matching keys will not allow single value matching on values that contain characters "*" and "?" - such queries will always be treated as queries with wildcard matching.

5. Attributes with VR of ST, LT and UT are intended for conveying narrative text and may contain wildcard characters "*" and "?". Attempts to match on a string explicitly containing "*" or "?" will be treated as wildcard matching and thus may return multiple results rather than a single one.

##### C.2.2.2.5 Range Matching

###### C.2.2.2.5.1 Range Matching of Attributes of VR of DA

In the absence of extended negotiation, then:

1. A string of the form "<date1> - <date2>", where <date1> is less or equal to <date2>, shall match all occurrences of dates that fall between <date1> and <date2> inclusive

2. A string of the form "- <date1>" shall match all occurrences of dates prior to and including <date1>

3. A string of the form "<date1> -" shall match all occurrences of <date1> and subsequent dates

###### C.2.2.2.5.2 Range Matching of Attributes of VR of TM

All comparison specified in the following shall be based on a direct comparison of times within a day. "Prior" includes all times starting from midnight of the same day to the specified time. "Subsequent" includes all times starting with the specified time until any time prior to midnight of the following day. Range matching crossing midnight is not supported.

No offset from Universal Coordinated Time is permitted in the TM VR values. If Timezone Offset From UTC (0008,0201) is present in the query identifier, the specified time values and the definition of midnight are in the specified timezone.

In the absence of extended negotiation, then:

1. A string of the form "<time1> - <time2>", where <time1> is less or equal to <time2>, shall match all occurrences of times that fall between <time1> and <time2> inclusive

2. A string of the form "- <time1>" shall match all occurrences of times prior to and including <time1>

3. A string of the form "<time1> -" shall match all occurrences of <time1> and subsequent times

###### C.2.2.2.5.3 Range Matching of Attributes of VR of DT

1. A string of the form "<datetime1> - <datetime2>", where <datetime1> is less or equal to <datetime2>, shall match all moments in time that fall between <datetime1> and <datetime2> inclusive

2. A string of the form "- <datetime1>" shall match all moments in time prior to and including <datetime1>

3. A string of the form "<datetime1> -" shall match all moments in time subsequent to and including <datetime1>

4. The offset from Universal Coordinated Time, if present in the Value of the Attribute, shall be taken into account for the purposes of the match.

###### C.2.2.2.5.4 Range Matching General Rules

If extended negotiation of combined datetime matching is successful, then a pair of Attributes that are of VR DA and TM, both of which specify the same form of range matching, shall have the concatenated string values of each range matching component matched as if they were a single Attribute of VR DT.

### Note

For example, a Study Date of "20060705-20060707" and a Study Time of "1000-1800" will match the time period of July 5, 10am until July 7, 6pm, rather than the three time periods of 10am until 6pm on each of July 5, July 6 and July 7, as would be the case without extended negotiation.

Regardless of other extended negotiation, an application may use the value of Timezone Offset From UTC (0008,0201) to adjust values of Attributes of VR TM and DT from the local timezone to UTC for matching. See Section C.2.2.2.1.

### Note

If extended negotiation of combined datetime matching is successful, the timezone offset may effect a change in date if the local time and UTC are on different sides of midnight.

Range matching is not defined for types of Attributes other than dates and times.

##### C.2.2.2.6 Sequence Matching

If a Key Attribute in the Identifier of a C-FIND request needs to be matched against an Attribute structured as a Sequence of Items (VR of SQ), the Key Attribute shall be structured as a Sequence of Items with a single Item. This Item may contain zero or more Item Key Attributes. Each Item Key Attribute matching shall be performed on an Item by Item basis. The types of matching defined in Section C.2.2.2 shall be used: Single Value Matching, List of UID Matching, Universal Matching, Wild Card Matching, Range Matching and Sequence Matching (recursive Sequence matching).

If all the Item Key Attributes match, for at least one of the Items of the Attribute against which the match is performed, a successful match is generated. A sequence of matching Items containing only the requested Attributes is returned in the corresponding C-FIND responses.

If the Key Attribute in the Identifier of a C-FIND request contains no Key Item Attribute (zero-length Item Tag), then all entities shall match this Attribute. This provides a universal matching like mechanism to request that the selected Key Attribute value (the entire Sequence of Items) be returned in corresponding C-FIND responses.

#### C.2.2.3 Matching Multiple Values

When matching an Attribute that has a value multiplicity of greater than one, if any of the values match, then all values shall be returned.

## C.3 Standard Query/Retrieve Information Models

Three standard Query/Retrieve Information Models are defined in this Annex. Each Query/Retrieve Information Model is associated with a number of SOP Classes. The following three hierarchical Query/Retrieve Information Models are defined:

- Patient Root

- Study Root

- Patient/Study Only

### C.3.1 Patient Root Query/Retrieve Information Model

The Patient Root Query/Retrieve Information Model is based upon a four level hierarchy:

- Patient

- Study

- Series

- Composite Object Instance

The patient level is the top level and contains Attributes associated with the Patient Information Entity (IE) of the Composite IODs as defined in PS3.3. Patients IEs are modality independent.

The study level is below the patient level and contains Attributes associated with the Study IE of the Composite IODs as defined in PS3.3. A study belongs to a single patient. A single patient may have multiple studies. Study IEs are modality independent.

The series level is below the study level and contains Attributes associated with the Series, Frame of Reference and Equipment IEs of the Composite IODs as defined in PS3.3. A series belongs to a single study. A single study may have multiple series. Series IEs are modality dependent. To accommodate this modality dependence, the set of Optional Keys at the series level includes all Attributes defined at the series level from any Composite IOD defined in PS3.3.

The lowest level is the Composite Object Instance level and contains Attributes associated with the Composite object IE of the Composite IODs as defined in PS3.3. A Composite Object Instance belongs to a single series. A single series may contain multiple Composite Object Instances. Most composite object IEs are modality dependent. To accommodate this potential modality dependence, the set of Optional Keys at the Composite Object Instance level includes all Attributes defined at the Composite Object Instance level from any Composite IOD defined in PS3.3.

### C.3.2 Study Root Query/Retrieve Information Model

The Study Root Query/Retrieve Information Model is identical to the Patient Root Query/Retrieve Information Model except the top level is the study level. Attributes of patients are considered to be Attributes of studies.

### C.3.3 Patient/Study Only Query/Retrieve Information Model

Retired. See PS 3.4-2004.

### C.3.4 Additional Query/Retrieve Attributes

Some optional Attributes that may be used in Query/Retrieve Information Models that are not Attributes of an Information Object Definition and, therefore, are not defined in PS3.3. These Attributes are defined in Table C.3-1.

Table C.3-1. Additional Query/Retrieve Attributes

Attribute Name | Tag | Attribute Description
--- | --- | ---
Number of Patient Related Studies | (0020,1200) | The number of studies that match the Patient level Query/Retrieve search criteria
Number of Patient Related Series | (0020,1202) | The number of series that match the Patient level Query/Retrieve search criteria
Number of Patient Related Instances | (0020,1204) | The number of Composite Object Instances that match the Patient level Query/Retrieve search criteria
Number of Study Related Series | (0020,1206) | The number of series that match the Study level Query/Retrieve search criteria
Number of Series Related Instances | (0020,1209) | The number of Composite Object Instances in a Series that match the Series level Query/Retrieve search criteria
Number of Study Related Instances | (0020,1208) | The number of Composite Object Instances that match the Study level Query/Retrieve search criteria
Modalities in Study | (0008,0061) | All of the distinct values used for Modality (0008,0060) in the Series of the Study.
SOP Classes in Study | (0008,0062) | The SOP Classes contained in the Study.
Anatomic Regions in Study Code Sequence | (0008,0063) | The anatomic regions of interest in this Study (i.e., external anatomy, surface anatomy, or general region of the body). One or more Items are permitted in this Sequence. ### Note If the Instances in the Study contain Anatomic Region Sequence (0008,2218), then the Items of this Sequence may be the union of the codes in the Instances. Alternatively, multiple (usually contiguous) anatomic regions might be combined into a single code. E.g., (T-D3000, SRT, "Chest"), (T-D4000, SRT, "Abdomen") and (T-D6000, SRT, "Pelvis") might be combined into (R-FAB56, SRT, "Chest, Abdomen and Pelvis"). If Instances in the Study do not contain Anatomic Region Sequence (0008,2218) but do contain Body Part Examined (0018,0015), then codes equivalent to recognized values of Body Part Examined (0018,0015) may be used. See Annex L “Correspondence of Anatomic Region Codes and Body Part Examined Defined Terms” in PS3.16 for standard equivalent values. E.g., if an Instance contained Body Part Examined (0018,0015) with a value of "CHEST", then this Sequence might contain (T-D3000, SRT, "Chest").
Alternate Representation Sequence | (0008,3001) | A Sequence of Items, each identifying an alternate encoding of an image that matches the Instance level Query/Retrieve search criteria (see Section C.6.1.1.5.1)

If the SCP manages images in multiple alternate encodings, only one of the alternate encodings of an image is included in the number of object instances.

### C.3.5 New Instance Creation for Enhanced Multi-Frame Image Conversion

When Query/Retrieve View (0008,0053) is present with a value of "CLASSIC" or "ENHANCED" in a C-FIND, C-MOVE or C-GET Request Identifier, then the Information Model against which the query or retrieval is performed and any SOP Instances that are retrieved shall be returned, constructed or converted according to the requirements in this section.

There are no requirements with respect to when such instances are actually created or persisted, only that they be available on request. I.e., they may be created in advance (cached) or they may be created dynamically as required, as long as the process is deterministic in the sense that the same Attributes will be populated with the same values on successive queries and retrievals (including UIDs).

### Note

1. The UID generation process is required to be deterministic but it is important to remember that appending a suffix to an existing UID is not a valid approach to generating a new UID, unless the converter is the producer (owner of the root) of the original UID and knows that this is safe and the result will be unique.

2. The cross-references between original and converted instances contain sufficient information to recover UIDs in the alternative form.

All instances for a Patient known to the SCP shall be converted as necessary to maintain referential integrity and to avoid information loss.

### Note

1. It is not permitted to fail to include a subset of instances within this scope, for example, the presentation states or key object selection documents, in the "ENHANCED" view, in order to avoid the effort of creating new instances with updated references required to maintain referential integrity. In other words, the total "information content" of any view will be no less than that of the default view.

2. This does not mean that all instances need to be converted, since if they contain no such references, they can be left alone and included in the view. For example, a Classic single slice CT localizer image with no references can remain unchanged in the view as a CT Image Storage SOP Class with its existing SOP Instance UID and SOP Class and in its existing Series, and be referenced from converted instances, such as the axial images prescribed from it. An SCU cannot make any assumptions about what will or will not be converted, or in what order.

3. It is understood that the requirements of this section are applicable to a single SCP; it is not possible to require all SCPs that perform conversion to perform it the same way, or create the same UIDs, etc.

In addition to the general requirements in this section, specific requirements apply to the following types of instance created:

- Enhanced (true or legacy converted) multi-frame images that are created from Classic single frame images

- Classic single frame images that are created from Enhanced (true or legacy converted) multi-frame images

- Instances that contain references to the SOP Instance UIDs or Series Instance UIDs corresponding to either the converted single frame images, or other instances with such references

The general requirements are that:

- The new Composite Instance shall have a new SOP Instance UID.

- The new Composite Instance shall be a valid SOP Instance (i.e., will comply with the IOD, Module and Attribute requirements for the Storage SOP Class).

- The new Composite Instance shall contain the Contributing Equipment Sequence (0018,A001). If the source Composite Instances already contain the Contributing Equipment Sequence with a consistent set of Item values (excluding Contribution DateTime (0018,A002)), then a new Item shall be appended to the copy of the sequence in the new Composite Instance; if the source Composite Instance does not contain the Contributing Equipment Sequence or the Item values (excluding Contribution DateTime (0018,A002)) differ between source instances, then Contributing Equipment Sequence shall be created, containing one new Item. In either case, the new Item shall describe the equipment that is creating the new Composite Instance, and the Purpose of Reference Code Sequence (0040,A170) within the Item shall be (109106, DCM, "Enhanced Multi-frame Conversion Equipment") and the Contribution Description (0018,A003) shall be "Legacy Enhanced Image created from Classic Images", "Classic Image created from Enhanced Image", or "Updated UID references during Legacy Enhanced Classic conversion" as appropriate.

- The new Composite Instance shall have the same Patient and Study level information as the source Instance, including the same Study Instance UID.

- The new Composite Instance shall have the same spatial and temporal Frame of Reference information as the source instance, if present (e.g., the Frame of Reference UID shall be the same).

- The new Composite Instance shall be placed in a new Series (together with other new Composite Instances that share the same, new Series level information), with a new Series Instance UID. The Series Date (0008,0021) and Series Time (0008,0031) of all the Instances in the new Series shall be the earliest of the values in the source Composite Instances, if present.

  ### Note

  1. The new Series Date and Time shall NOT be that of when the conversion was performed, but shall reflect the values in the source images.

  2. There is no standard requirement or mechanism defined to change or preserve other Series level Attributes, such as Series Number or Series Description. This is left to the discretion of the implementer, particularly in cases where instances from different Series are merged.

- The new Composite Instance shall have the same Items and Values of Request Attributes Sequence (0040,0275) as the source Composite Instances, if Request Attributes Sequence (0040,0275) is present in any of the source Composite Instances.

- If the new Composite Instance contains references to another entity for the same Patient (including, but not limited to, references to SOP Instances, Series, Studies or Frames of Reference), and the target of those references is also converted, then the references shall be changed to refer to the converted entity.

  ### Note

  1. For example, if the source instance refers to an instance in a Series, and the referenced instance is also converted, and hence placed in a new Series, then both the SOP Instance UID and the Series Reference UID in the hierarchical reference to the instance will need to be updated, as will the SOP Class UID of the referenced instance, if that has changed, as it likely will have.

  2. The overall intent is to maintain referential integrity within the converted set of instances, within the scope of the same Patient. Since it is likely that most if not all non-image instances for a patient will reference images that will be converted, this means that most if not all non-image instances will also have to be "converted", for the purpose of updating such references. This referential integrity is required regardless of whether the initial request is for a subset of instances for the patient only, or not.

  3. The UIDs referenced in Conversion Source Attributes Sequence (0020,9172) are not converted, since by definition, these reference instances in the "other" view; they should not exist in the source, but will be inserted (or be replaced, if previously converted) during conversion.

The specific requirements for the conversion of single frame images to Enhanced Multi-frame images are:

- The SOP Class of the new Composite Instance shall be the appropriate modality-specific Enhanced Image Storage SOP Class that is intended for de novo creation by an acquisition or post-processing device, unless the source images do not contain sufficient information to populate mandatory Attributes with standard Enumerated Values and Defined Terms or Coded Sequence Item values, in which case the appropriate modality-specific Legacy Converted Enhanced Image Storage SOP Class shall be used. The appropriate SOP Classes are defined in Table C.3.5-1.

  ### Note

  1. For example, if the source images to be converted are of the CT Image Storage SOP Class, then the preferred new SOP Class is the Enhanced CT Image Storage SOP Class, but if this is not possible, the Legacy Converted Enhanced CT Image Storage SOP Class is used.

  2. It is not intended that images from different modalities be combined in the same new Composite Instance. For example, it is not expected that CT and PET images would be combined in the same Instance, since the technique Attributes and the pixel data characteristics are quite distinct.

  3. It is expected that as many single frame images will be combined into a single multi-frame image as is sensible, given the constrains on what Attributes must be identical as defined in this section, and depending on the type of images and the size of the resulting object. Different implementations may make different choices in this respect. For example, an application might choose to combine only images in the same Series, or with the same slice spacing, or the same values for Image Type, or with the same Image Orientation (Patient).

- The new Composite Instance shall not be contained in a Concatenation. This means that it shall not contain a Concatenation UID (0020,9161) Attribute or other Concatenation Attributes. If the existing Composite Instance contains such Attributes, they shall not be included in the new Composite Instance.

- The new Composite Instance contains only one set of Attributes for the Image Pixel Module, hence the contents of the Image Pixel Module shall either be identical in all source images, or the Pixel Data for each frame shall be converted as necessary to match the Image Pixel Module of the new Composite Instance.

  ### Note

  1. In particular this means that the values of Rows, Columns, Bits Stored, Bits Allocated, High Bit, Pixel Representation, Samples per Pixel, Photometric Interpretation and Planar Configuration applicable to all of the frames needs to be the same. In special cases, such as where Bits Stored is less than Bits Allocated but varies per frame, it may be safe to use the largest value for all the frames and ensure that any unused high bits are appropriately masked before encoding. It is not expected that source images with different numbers of Rows and Columns will be combined (by padding the periphery of images smaller than the largest); quite apart from not being the intended use case, this has the potential to greatly expand the size of the instance, and might also require adjustment of the Image Position (Patient) values.

  2. Special attention should be given to the Pixel Padding Value and associated Attributes, in case these vary per frame in the source images, in which case the Pixel Data for some frames may need to be modified to be consistent with all the other frames.

  3. It is possible to change the Image Pixel Module Attributes related to compressed Transfer Syntaxes (including lossy or irreversible compression) during conversion.

- All mandatory Attributes of all mandatory Modules and Functional Group Macros of the SOP Class of the new Composite Instance shall be populated as required by the IOD. In this context, "mandatory" means either required or conditional where the condition is satisfied.

  ### Note

  For example, if the source images to be converted are of the CT Image Storage SOP Class, and the new Composite Instance is of the Legacy Converted Enhanced CT Image Storage SOP Class, then it is required that the Pixel Measures Functional Group be populated from Pixel Spacing, that the Plane Position (Patient) Functional Group be populated from Image Position (Patient), etc. In addition, if Body Part Examined is present in the source images with a standard value, then the condition for the inclusion of the Frame Anatomy Functional Group is satisfied, and the value therein needs to be converted to the appropriate Anatomic Region Sequence code.

- All optional Attributes, Modules and Functional Group Macros for which corresponding information is present in the source images in standard Attributes shall also be populated.

- All Attributes of the Overlay Module shall be removed and converted into a Grayscale or Color Softcopy Presentation State (depending on the value of Photometric Interpretation); if the Overlay uses high bits in the Pixel Data (7FE0,0010) these shall be extracted and encoded in Overlay Data (60xx,3000) in the Presentation State and shall be set to zero in the Pixel Data (7FE0,0010) Attribute in the converted image.

  ### Note

  The extraction of Overlays from multiple frames may lead to a proliferation of GSPS Instances (one per converted frame), unless the converter recognizes commonality in the binary values of overlay bit planes and factors it out into fewer GSPS objects that each apply to multiple frames.

- All Attributes of the Curve Module (retired, but formerly defined in DICOM) shall be removed; they may be converted into a Grayscale or Color Softcopy Presentation State (depending on the value of Photometric Interpretation) or a Waveform as appropriate, but this is not required.

- All Attributes of the Graphic Annotation Sequence (0070,0001) (not defined in Classic image IODs, but sometimes used in a Standard Extended SOP Class) shall be removed; they may be converted into a Grayscale or Color Softcopy Presentation State (depending on the value of Photometric Interpretation), but this is not required.

- All remaining Attributes in the source images (i.e., those that have not been used to populate mandatory or optional Attributes in Modules and Functional Groups), including Private Attributes, shall be copied into the top-level Data Set or the Unassigned Shared Converted Attributes Sequence (0020,9170) if they are present in all of the source images for the new Composite Instance, have the same number of values, and have the same values, otherwise they shall be copied into the Unassigned Per-Frame Converted Attributes Sequence (0020,9171).

  ### Note

  The semantics of Private Attributes, or Standard Attributes used in a Standard Extended SOP Class, might not be maintained, being unknown to the converting application; for example, referential integrity of UIDs in Private Attributes might not be updated.

- The new Composite Instance shall contain references to the source Instances from which it was converted, encoded in the Conversion Source Reference Functional Group Macro.

The specific requirements for the conversion of Enhanced Multi-frame images to Classic single frame images are:

- The SOP Class of the new Composite Instance shall be the appropriate modality-specific (Classic) Image Storage SOP Class that is intended for de novo creation by an acquisition or post-processing device.

  ### Note

  For example, if the source images to be converted are of the Enhanced CT Image Storage SOP Class or the Legacy Converted Enhanced CT Image Storage SOP Class, then the new SOP Class is the CT Image Storage SOP Class.

- All mandatory Attributes of the IOD of the SOP Class of the new Composite Instance shall be populated. In this context, "mandatory" means either required or conditional where the condition is satisfied.

  ### Note

  For example, if the source images to be converted are of the Legacy Converted Enhanced CT Image Storage SOP Class, and the new Composite Instance is of the CT Image Storage SOP Class, then it is required that Pixel Spacing be populated from the Pixel Measures Functional Group, that Image Position (Patient) be populated from the Plane Position (Patient) Functional Group, etc.

- All optional Attributes in Modules of the IOD for which corresponding information is present in the source images shall also be populated.

- All remaining Attributes in the source images (i.e., those that have not been used to populate mandatory or optional Attributes in Modules), including Private Attributes, shall be copied from the top-level Data Set and the Shared Functional Group Macro and the corresponding Item of the Per-Frame Functional Group Macro into the top-level Data Set of the new Composite Instance, including those in the Unassigned Shared Converted Attributes Sequence (0020,9170) and the corresponding Item of the Unassigned Per-Frame Converted Attributes Sequence (0020,9171) (which will result in a Standard Extended SOP Class).

  ### Note

  1. Identifying Attributes, such as Series Number or Series Description, will be present in the Unassigned functional groups, and UIDs will be present in the Conversion Source Attributes Sequence, allowing, for example, the original Series organization to be recovered, whether or not a single Series was previously converted into a single Legacy Converted instance or it was split or merged with other Series.

  2. The integrity of the set of Private Attributes recovered in this manner cannot be guaranteed to result in the correct function of any applications that depend on them, but the expectation is that this will be no better or worse than the impact of storing instances with private Attributes on any Storage SCP that may or may not reorganize and/or selectively preserve Private Attributes.

- The new Composite Instance shall contain references to the source Instances from which it was converted, encoded in the Conversion Source Attributes Sequence (0020,9172) in the SOP Common Module.

The specific requirements for the conversion of other instances are:

- The new Composite Instance shall be an instance of the same SOP Class as the source Composite Instance.

- The new Composite Instance shall contain references to the source Instances from which it was converted, encoded in the Conversion Source Attributes Sequence (0020,9172) in the SOP Common Module.

Table C.3.5-1. Modality-Specific SOP Class Conversions

Classic | True Enhanced | Legacy Converted Enhanced
--- | --- | ---
CT Image Storage | Enhanced CT Image Storage | Legacy Converted Enhanced CT Image Storage
MR Image Storage | Enhanced MR Image Storage | Legacy Converted Enhanced MR Image Storage
PET Image Storage | Enhanced PET Image Storage | Legacy Converted Enhanced PET Image Storage

## C.4 DIMSE-C Service Groups

Three DIMSE-C Services are used in the construction of SOP Classes of the Query/Retrieve Service Class. The following DIMSE-C operations are used:

- C-FIND

- C-MOVE

- C-GET

### C.4.1 C-FIND Operation

SCPs of some SOP Classes of the Query/Retrieve Service Class may be capable of processing queries using the C-FIND operation as described in PS3.7. The C-FIND operation is the mechanism by which queries are performed. Matches against the keys present in the Identifier are returned in C-FIND responses.

#### C.4.1.1 C-FIND Service Parameters

##### C.4.1.1.1 SOP Class UID

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

##### C.4.1.1.2 Priority

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

##### C.4.1.1.3 Identifier

Both the C-FIND request and response contain an Identifier encoded as a Data Set (see PS3.5).

### Note

The definition of a Data Set in PS3.5 specifically excludes the range of groups below group 0008, and this includes in particular Meta Information Header elements such as Transfer Syntax UID (0002,0010). The C-FIND request and identifier do not support a mechanism for ascertaining the manner in which an SCP might have encoded a stored image whether it be by requesting Transfer Syntax UID (0002,0010) or by any other mechanism.

###### C.4.1.1.3.1 Request Identifier Structure

An Identifier in a C-FIND request shall contain:

- Key Attributes values to be matched against the values of storage SOP Instances managed by the SCP.

- Query/Retrieve Level (0008,0052), which defines the level of the query.

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

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Request Identifier. It shall not be included otherwise.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if Key Attributes of time are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

The Key Attributes and values allowable for the level of the query shall be defined in the SOP Class definition for the Query/Retrieve Information Model.

###### C.4.1.1.3.2 Response Identifier Structure

The C-FIND response shall not contain Attributes that were not in the request or specified in this section.

An Identifier in a C-FIND response shall contain:

- Key Attributes with values corresponding to Key Attributes contained in the Identifier of the request.

  ### Note

  1. All Required Keys in the Request Identifier, as well as all Optional Keys in the Request Identifier that are supported by the SCP, will therefore be present in the Response Identifier.

  2. Required Keys and supported Optional Keys in the Response Identifier will have zero length if the SCP has no value to send; i.e., there is no requirement that the SCP have a value for these, or create a dummy value.

  3. The requirement that unsupported Optional Keys present in the Request Identifier not be included in the Response Identifier is specified in Section C.2.2.1.3.

- Query/Retrieve Level (0008,0052), which defines the level of the query. The Query/Retrieve level shall be equal to the level specified in the request.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Response Identifier. It shall not be included otherwise. The C-FIND SCP is not required to return responses in the Specific Character Set requested by the SCU if that character set is not supported by the SCP. The SCP may return responses with a different Specific Character Set.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if any Attributes of time in the Response Identifier are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

The C-FIND SCP is required to support either or both the Retrieve AE Title Data Element or the Storage Media File-Set ID/Storage Media File Set UID Data Elements. An Identifier in a C-FIND response shall contain:

- Storage Media File-Set ID (0088,0130), which defines a user or implementation specific human readable Identifier that identifies the Storage Media on which the Composite Object Instance(s); reside. This element pertains to the set of Composite Object Instances available at the Query/Retrieve Level specified in the Identifier of the C-FIND request (e.g., Patient, Study, Series, Composite Object Instance). This Attribute shall be present if the Retrieve AE Title Data Element is not present. A null value (Data Element length of 0) is valid for all levels except the lowest level in the Information Model as defined by the SOP Class.

- Storage Media File-Set UID (0088,0140), which uniquely identifies the Storage Media on which the Composite Object Instance(s) reside. This element pertains to the set of Composite Object Instances available at the Query/Retrieve Level specified in the Identifier of the C-FIND request (e.g., Patient, Study, Series, Composite Object Instance). This Attribute shall be present if the Retrieve AE Title Data Element is not present. A null value (Data Element length of 0) is valid for all levels except the lowest level in the Information Model as defined by the SOP Class.

  ### Note

  The File-Set concepts are used in PS3.10.

- Retrieve AE Title (0008,0054), which defines a list of DICOM Application Entity Title(s) that identify the location from which the Composite Object Instance(s) may be retrieved on the network. This element pertains to the set of Composite Object Instances available at the Query/Retrieve Level specified in the Identifier of the C-FIND request (e.g., Patient, Study, Series, Composite Object Instance). This Attribute shall be present if the Storage Media File-Set ID and Storage Media File-Set UID elements are not present. The Application Entity named in this field shall support either the C-GET or C-MOVE SOP Class of the Query/Retrieve Service Class. A null value (Data Element length of 0) is valid for all levels except the lowest level in the Information Model as defined by the SOP Class.

  ### Note

  1. For example, a DICOM AE with the AE Title of "A" performs a C-FIND request to a DICOM AE with the AE Title of "B" with the Query/Retrieve level set to "STUDY". DICOM AE "B" determines that the Composite Object Instances for each matching study may be retrieved by itself and sets the Data Element Retrieve AE Title to "B".

  2. File-Sets may not be defined at every Query/Retrieve Level. If the SCP supports the File-Set ID/File-Set UID option but does not define these Attributes at the Query/Retrieve Level specified in the C-FIND request it may return these Data Elements with a length of 0 to signify that the value is unknown. An SCU should reissue a C-FIND at a Query/Retrieve Level lower in the hierarchy.

  3. The fact that the value of the Key Attribute is unknown to the SCP of the Query/Retrieve Service Class does not imply that it is not present in the underlying Information Object. Thus, a subsequent retrieval may cause a Storage of a SOP Instance that contains the value of the Attribute.

The C-FIND SCP may also, but is not required to, support the Instance Availability (0008,0056) Data Element. This Data Element shall not be included in a C-FIND request. An Identifier in a C-FIND response may contain:

- Instance Availability (0008,0056), which defines how rapidly Composite Object Instance(s); become available for transmission after a C-MOVE or C-GET retrieval request. This element pertains to the set of Composite Object Instances available at the Query/Retrieve Level specified in the Identifier of the C-FIND request (e.g., Patient, Study, Series, Composite Object Instance). When some composite instances are less rapidly available than others, the availability of the least rapidly available shall be returned. If this Data Element is not returned, the availability is unknown or unspecified. A null value (Data Element length of 0) is not permitted. The Enumerated Values for this Data Element are:

  - "ONLINE", which means the instances are immediately available,

  - "NEARLINE", which means the instances need to be retrieved from relatively slow media such as optical disk or tape, or require conversion that takes time,

  - "OFFLINE", which means the instances need to be retrieved by manual intervention,

  - "UNAVAILABLE", which means the instances cannot be retrieved. Note that SOP Instances that are unavailable may have an alternate representation that is available (see section Section C.6.1.1.5.1).

##### C.4.1.1.4 Status

Table C.4-1 defines the specific status code values that might be returned in a C-FIND response. General status code values and fields related to status code values are defined for C-FIND DIMSE Service in PS3.7.

Table C.4-1. C-FIND Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
| Error: Data Set does not match SOP Class | A900 | (0000,0901) (0000,0902)
| Failed: Unable to process | Cxxx | (0000,0901) (0000,0902)
Cancel | Matching terminated due to Cancel request | FE00 | None
Success | Matching is complete - No final Identifier is supplied. | 0000 | None
Pending | Matches are continuing - Current Match is supplied and any Optional Keys were supported in the same manner as Required Keys. | FF00 | Identifier
| Matches are continuing - Warning that one or more Optional Keys were not supported for existence and/or matching for this Identifier. | FF01 | Identifier

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

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table C.4-1 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.

#### C.4.1.2 C-FIND SCU Behavior

This Section discusses both the baseline and extended behavior of the C-FIND SCU.

##### C.4.1.2.1 Baseline Behavior of SCU

All C-FIND SCUs shall be capable of generating query requests that meet the requirements of the Hierarchical Search.

The Identifier contained in a C-FIND request shall contain a single value in the Unique Key Attribute for each level above the Query/Retrieve level. No Required or Optional Keys shall be specified that are associated with levels above the Query/Retrieve level.

The Unique Key Attribute associated with the Query/Retrieve level shall be contained in the C-FIND request and may specify Single Value Matching, Universal Value Matching, or List of UID Matching. In addition, Required and Optional Keys associated with the Query/Retrieve level may be contained in the Identifier.

An SCU conveys the following semantics using the C-FIND request:

- The SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information it possesses down to the Query/Retrieve level specified in the request.

  ### Note

  1. The SCU may not assume the SCP supports any Optional Keys. Hence, Optional Keys serve only to reduce network related overhead when they are supported by the SCP.

  2. The SCU must be prepared to filter C-FIND responses when the SCP fails to support an Optional Key specified in the C-FIND request.

- The SCU shall interpret Pending responses to convey the Attributes of a match of an Entity at the level of the query.

- The SCU shall interpret a response with a status equal to Success, Failed or Refused to convey the end of Pending responses.

- The SCU shall interpret a Refused or Failed response to a C-FIND request as an indication that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND. The SCU shall recognize a status of Canceled to indicate that the C-FIND-CANCEL was successful.

##### C.4.1.2.2 Extended Behavior of SCU

Extended SCU behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCU behavior shall be performed with respect to that option. Extended SCU behavior includes all baseline behavior with the following option:

- Relational-queries

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.1.2.2.1 Relational-Queries

The C-FIND Service with relational-queries allows any combination of keys at any level in the hierarchy. The Unique Key Attribute associated with the Query/Retrieve level shall be contained in the C-FIND request and may specify Single Value Matching, Universal Value Matching, or List of UID Matching. Support for relational-queries removes the baseline restriction that a Unique Key shall be specified for all levels above the Query/Retrieve level in the C-FIND request.

###### C.4.1.2.2.2 Enhanced Multi-Frame Image Conversion

The C-FIND Service with Enhanced Multi-Frame Image Conversion allows for selection of the default or an alternative view of the instances represented by the Information Model.

Support for Enhanced Multi-Frame Image Conversion allows the SCU to specify the Query/Retrieve View (0008,0053) in the Request Identifier with a value of either "CLASSIC" or "ENHANCED".

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then the SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information about the instances that it possesses, as received.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then the SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information about Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then the SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information about Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

### Note

1. The SCU may assume that no duplicate information will be returned. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-FIND will not return both series.

2. The Query Information Model is unchanged, and the same unique, required and optional keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

3. Unconverted instances, such as for other modalities like Ultrasound, will appear identical regardless of view.

4. Implementations may apply performance optimizations, such as pre-computing or caching the potential information against which CLASSIC and ENHANCED queries may be performed, in order to minimize significant delays between the query request and response caused by converting "on demand", but SCUs may need to consider the potential for a delayed response when configuring timeouts, etc.

#### C.4.1.3 C-FIND SCP Behavior

This Section discusses both the baseline and extended behavior of the C-FIND SCP.

##### C.4.1.3.1 Baseline Behavior of SCP

All C-FIND SCPs shall be capable of processing queries that meet the requirements of the Hierarchical Search.

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

- The SCP is requested to perform a match of all the keys specified in the Identifier of the request, against the information it possesses, to the level specified in the request. Attribute matching is performed using the key values specified in the Identifier of the C-FIND request as defined in Section C.2.

- The SCP generates a C-FIND response for each match using the Hierarchical Search method. All such responses shall contain an Identifier whose Attributes contain values from a single match. All such responses shall contain a status of Pending.

- When all matches have been sent, the SCP generates a C-FIND response that contains a status of Success. A status of Success shall indicate that a response has been sent for each match known to the SCP.

  ### Note

  When there are no matches, then no responses with a status of Pending are sent, only a single response with a status of Success.

- The SCP shall generate a response with a status of Refused or Failed if it is unable to process the request. A Refused or Failed response shall contain no Identifier.

- If the SCP receives C-FIND-CANCEL indication before it has completed the processing of the matches it shall interrupt the matching process and return a status of Canceled.

- If the SCP manages images in multiple alternate encodings (see Section C.6.1.1.5.1), only one of the alternate encodings of an image shall be included in the set of matches for a C-FIND request at the Instance level.

  ### Note

  For query of images with alternate encodings, the SCP may select the appropriately encoded Instance for the request response based on identity of the SCU or other factors.

###### C.4.1.3.1.1 Hierarchical Search Method

Starting at the top level in the Query/Retrieve Information Model, continuing until the level specified in the C-FIND request is reached, the following procedures are used to generate matches:

1. If the current level is the level specified in the C-FIND request, then the key match strings contained in the Identifier of the C-FIND request are matched against the values of the Key Attributes for each entity at the current level. For each entity for which the Attributes match all of the specified match strings, construct an Identifier. This Identifier shall contain all of the Unique Keys at higher levels and all of the values of the Attributes for this entity that match those in the C-FIND request. Return a response for each such Identifier. If there are no matching keys, then there are no matches, return a response with a status equal to Success and with no Identifier.

2. Otherwise, if the current level is not the level specified in the C-FIND request and there is an entity matching the Unique Key Attribute value for this level specified in the C-FIND request, perform this procedure at the next level down in the hierarchy.

3. Otherwise there are no matches; return a response with a status equal to Success.

   ### Note

   The above description specifies a recursive procedure. It may recur upon itself multiple times as it goes down the hierarchical levels, but at each level it recurs only once.

##### C.4.1.3.2 Extended Behavior of SCP

Extended SCP behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCP behavior shall be performed with respect to that option. Extended SCP behavior includes all baseline behavior with the following option:

- Relational-queries

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.1.3.2.1 Relational-Queries

The C-FIND Service with relational-queries allows any combination of keys at any level in the hierarchy. At the lowest level, a query using the relational-queries shall contain the Unique Key for that level with either a single value match, a wild card match, or a universal match. Support for relational-queries removes the baseline restriction that a Unique Key shall be specified for all levels above the Query/Retrieve level in the C-FIND request.

The C-FIND SCP shall perform matching based on all keys specified in the C-FIND request regardless of the Query/Retrieve level.

###### C.4.1.3.2.2 Relational Search Method

A query using the relational method may contain any combination of keys at any level in the hierarchy. Starting at the top level in the Query/Retrieve Information Model, continuing until the Query/Retrieve level specified in the C-FIND request is reached, the following procedures are used to generate matches:

1. The key match strings contained in the Identifier of the C-FIND request are matched against the values of the Key Attributes for each entity at the current level.

2. If no Key Attribute is specified at the current level and the current level is not the level specified in the C-FIND request, the match shall be performed as if a wild card were specified for the Unique Key Attribute for the current level (i.e., all entities at the current level shall match).

3. If the current level is the level specified in the C-FIND request, then for each matching entity (a matching entity is one for which the Attributes match all of the specified match strings in the Key Attributes), construct an Identifier. This Identifier shall contain all of the Attributes generated by this procedure at higher levels on this recursion path and all of the values of the Key Attributes for this entity that match those in the C-FIND request.

4. Otherwise, if the current level is not the level specified in the C-FIND request, then for each matching entity construct a list of Attributes containing all of the matching Key Attributes and all Attributes that were prepared at the previous level for this entity. Then perform this procedure at the next level down in the hierarchy for each matching entity.

5. Otherwise, if there are no matches, return a response with status equal to Success and no Identifier.

### Note

1. The above description specifies a recursive procedure. It may recur upon itself multiple times as it goes down the hierarchical levels, and at each level, it may recur multiple times (one for each matching entity). This may result in a large number of Identifiers being generated.

2. It is not required that the above defined procedure be used to generate matches. It is expected that implementations will incorporate different algorithms for performing searches of the databases. For a given query, the set of matches shall be equivalent to that which would be generated by the above procedure.

###### C.4.1.3.2.3 Enhanced Multi-Frame Image Conversion

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then the SCP shall perform a match of all keys specified in the Identifier of the request against the information about the instances that it possesses, as received.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then the SCP shall perform a match of all keys specified in the Identifier of the request against the information about Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then the SCP shall perform a match of all keys specified in the Identifier of the request against the information about Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

### Note

1. The SCP will not return information that is duplicated. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-FIND will not return both series.

2. The Query Information Model is unchanged, and the same unique, required and optional keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

3. Unconverted instances, such as for other modalities like Ultrasound, will appear identical regardless of view.

### C.4.2 C-MOVE Operation

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.

### Note

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

#### C.4.2.1 C-MOVE Service Parameters

##### C.4.2.1.1 SOP Class UID

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.

##### C.4.2.1.2 Priority

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.

##### C.4.2.1.3 Move Destination

Move Destination specifies the Application Entity Title of the receiver of the C-STORE sub-operations.

##### C.4.2.1.4 Identifier

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.

### Note

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.

###### C.4.2.1.4.1 Request Identifier Structure

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.

### Note

1. 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).

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

###### C.4.2.1.4.2 Response Identifier Structure

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.

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

The Identifier in a C-MOVE response with a status of:

- Canceled, Failure, Refused, or Warning shall contain the Failed SOP Instance UID List Attribute

- Pending shall not contain the Failed SOP Instance UID List Attribute (no Data Set)

##### C.4.2.1.5 Status

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

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,1021) (0000,1022) (0000,1023)
| Refused: Move Destination unknown | A801 | (0000,0902)
| Error: Data Set does not match SOP Class | A900 | (0000,0901) (0000,0902)
| Failed: Unable to Process | Cxxx | (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 | B000 | (0000,1021) (0000,1022) (0000,1023)
Success | Sub-operations Complete - No Failures | 0000 | (0000,1021) (0000,1022) (0000,1023)
Pending | Sub-operations are continuing | FF00 | (0000,1020) (0000,1021) (0000,1022) (0000,1023)

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.

##### C.4.2.1.6 Number of Remaining Sub-Operations

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.

A C-MOVE response with a status of:

- Pending shall contain the Number of Remaining Sub-operations Attribute

- Canceled may contain the Number of Remaining Sub-operations Attribute

- Warning, Failure, or Success shall not contain the Number of Remaining Sub-operations Attribute

##### C.4.2.1.7 Number of Completed Sub-Operations

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.

A C-MOVE response with a status of:

- Pending shall contain the Number of Completed Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Completed Sub-operations Attribute

##### C.4.2.1.8 Number of Failed Sub-Operations

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.

A C-MOVE response with a status of:

- Pending shall contain the Number of Failed Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Failed Sub-operations Attribute

##### C.4.2.1.9 Number of Warning Sub-Operations

Inclusion of the Number of Warning Sub-operations is conditional based upon the status in the C-MOVE response. The Number of Warning sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that had a status of warning.

A C-MOVE response with a status of:

- Pending shall contain the Number of Warnings Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Warning Sub-operations Attribute

#### C.4.2.2 C-MOVE SCU Behavior

This Section discusses both the baseline and extended behavior of the C-MOVE SCU.

##### C.4.2.2.1 Baseline Behavior of SCU

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

- The SCU shall supply a single value in the Unique Key Attribute for each level above the Query/Retrieve level. For the level of retrieve, the SCU shall supply a single value for one unique key if the level of retrieve is above the STUDY level and shall supply one UID, or a list of UIDs if a retrieval of several items is desired and the retrieve level is STUDY, SERIES or IMAGE. The SCU shall also supply a move destination. The move destination shall be the DICOM Application Entity Title of a DICOM Application Entity capable of serving as the SCP of the Storage Service Class.

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

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

  - Success to indicate that all sub-operations were successfully completed

  - Warning to indicate one or more sub-operations were successfully completed and one or more sub-operations were unsuccessful or had a status of warning, or all sub-operations had a status of warning

  - Failure or Refused to indicate all sub-operations were unsuccessful.

- The SCU may cancel the C-MOVE service by issuing a C-MOVE-CANCEL request at any time during the processing of the C-MOVE. The SCU shall interpret a C-MOVE response with a status of Canceled to indicate the transfer was canceled. The C-MOVE 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-MOVE-CANCEL request.

##### C.4.2.2.2 Extended Behavior of SCU

Extended SCU behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCU behavior shall be performed with respect to that option. Extended SCU behavior includes all baseline behavior with the following option:

- Relational-retrieve

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.2.2.2.1 Relational-Retrieve

The C-MOVE Service with relational-retrieve removes the restriction that the SCU supply Unique Key values for levels above the Query/Retrieve level to identify an entity at the level of the retrieval. Hence, the Identifier of a C-MOVE request may transfer:

- all Composite Object Instances related to a study by only providing a Study Instance UID (0020,000D)

- all Composite Object Instances related to a series by only providing a Series Instance UID (0020,000E)

- individual Composite Object Instances by only providing a list of SOP Instance UIDs (0008,0018)

###### C.4.2.2.2.2 Enhanced Multi-Frame Image Conversion

The C-MOVE Service with Enhanced Multi-Frame Image Conversion allows for selection of the default or an alternative view of the instances represented by the Information Model, and hence the retrieval of either the legacy or the converted images, together with any unconverted instances, all of which are required to be processed to maintain referential integrity within the scope of the Patient.

Support for Enhanced Multi-Frame Image Conversion allows the SCU to specify the Attribute Query/Retrieve View (0008,0053) in the Request Identifier with a value of either "CLASSIC" or "ENHANCED".

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then the SCU requests that the SCP provide all the requested instances it possesses, as received.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then the SCU requests that the SCP provide all the Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then the SCU requests that the SCP provide all the Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

### Note

1. The SCU may assume that no duplicate information will be provided. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-MOVE will not provide both series.

2. The Query Information Model is unchanged, and the same unique keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

3. The Query/Retrieve View is still required in an IMAGE or SERIES level request identifier, even though the requested unique key(s) are unambiguous, and the view is in a sense "redundant", because the conversion that created the requested instances may not have been executed yet. It is not permitted to specify a view that is inconsistent with the requested unique key(s).

#### C.4.2.3 C-MOVE SCP Behavior

This section discusses both the baseline and extended behavior of the C-MOVE SCP.

##### C.4.2.3.1 Baseline Behavior of SCP

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

- 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-MOVE request. The SCP shall initiate C-STORE sub-operations for the corresponding storage SOP Instances. These C-STORE sub-operations shall occur on a different Association (that may already exist) from the C-MOVE operation. The SCP of the Query/Retrieve Service Class shall serve as an SCU of the Storage Service Class.

- The SCP shall either reuse an established and compatible Association or establish a new Association for the C-STORE sub-operations. The SCP shall initiate C-STORE sub-operations over that Association for all stored SOP Instances related to the Patient ID, List of Study Instance UIDs, List of Series Instance UIDs, or List of SOP Instance UIDs depending on the Query/Retrieve level specified in the C-MOVE request. A sub-operation is considered Failed if the SCP is unable to negotiate an appropriate presentation context for a given stored SOP Instance.

- Optionally, the SCP may generate responses to the C-MOVE with status equal to Pending during the processing of the C-STORE sub-operations. These responses shall indicate the Remaining, Completed, Failed, 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, Failure, or Refused. This response shall indicate the number of Completed sub-operations, the number of Failed sub-operations, and the number of sub-operations with Warning Status. The status contained in the C-MOVE response shall contain:

  - Success if all sub-operations were successfully completed

  - Warning if one or more sub-operations were successfully completed and one or more sub-operations were unsuccessful or had a warning status

  - Warning if all sub-operations had a warning status

  - Failure or Refused if all sub-operations were unsuccessful

- The SCP may receive a C-MOVE-CANCEL request at any time during the processing of the C-MOVE. The SCP shall interrupt all C-STORE sub-operation processing and return a status of Canceled in the C-MOVE response. The C-MOVE 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-MOVE-CANCEL request.

- If the SCP manages images in multiple alternate encodings (see Section C.6.1.1.5.1), only one of the alternate encodings of an image shall be included in the set of object instances retrieved by a C-MOVE request at the Patient, Study, or Series level.

  ### Note

  For retrieval of images with alternate encodings using a C-MOVE request at the Patient, Study, or Series level, the SCP may select the appropriately encoded Instance for the retrieval based on identity of the SCU, transfer syntaxes accepted in the C-STORE Association Negotiation, or other factors.

### Note

If the association on which the C-MOVE operation was issued is abnormally terminated, then it will not be possible to issue any further pending responses nor a final response, nor will C-MOVE-CANCEL requests be received. The behavior of the C-MOVE SCP acting as a C-STORE SCU is undefined in this condition. Specifically, whether or not any uncompleted C-STORE sub-operations continue is undefined.

##### C.4.2.3.2 Extended Behavior of SCP

Extended SCP behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCP behavior shall be performed with respect to that option. Extended SCP behavior includes all baseline behavior with the following option:

- Relational-retrieve

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.2.3.2.1 Relational-Retrieve

The C-MOVE Service with relational-retrieve removes the restriction that the SCU supply Unique Key values for levels above the Query/Retrieve level to help identify an entity at the level of the retrieval. Hence, the Identifier of a C-MOVE request may specify the transfer of:

- all Composite Object Instances related to a study by only providing a Study Instance UID (0020,000D)

- all Composite Object Instances related to a series by only providing a Series Instance UID (0020,000E)

- individual Composite Object Instances by only providing a list of SOP Instance UIDs (0008,0018)

###### C.4.2.3.2.2 Enhanced Multi-Frame Image Conversion

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then 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-MOVE request that correspond to the instances it possesses, as received, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then 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-MOVE request that correspond to the Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then 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-MOVE request that correspond to the Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

### Note

1. The SCP will not send information that is duplicated to the C-STORE SCP. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-MOVE will not send both series.

2. The C-STORE SCP will need to support the necessary SOP Classes for converted instances, otherwise the C-STORE sub-operations will fail in the normal manner and this will be reflected in the C-MOVE responses.

3. The Query Information Model is unchanged, and the same unique, required and optional keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

4. The Query/Retrieve View is still required in an IMAGE or SERIES level request identifier, even though the requested unique key(s) are unambiguous.

### C.4.3 C-GET Operation

SCUs of some SOP Classes of the Query/Retrieve Service Class may generate retrievals using the C-GET operation as described in PS3.7. The C-GET operation allows an application entity to instruct another application entity to transfer 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 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.

#### C.4.3.1 C-GET Service Parameters

##### C.4.3.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.

##### C.4.3.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.

##### C.4.3.1.3 Identifier

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

### Note

The Identifier is specified as U in the definition of the C-GET primitive in PS3.7 but is specialized for use with this service.

###### C.4.3.1.3.1 Request Identifier Structure

An Identifier in a C-GET 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 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.

### Note

1. 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).

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

###### C.4.3.1.3.2 Response Identifier Structure

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-GET operation has failed. An Identifier in a C-GET response shall conditionally contain the Failed SOP Instance UID List (0008,0058) based on the C-GET response. 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-GET response.

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

The Identifier in a C-GET response with a status of:

- Canceled, Failure, Refused, or Warning shall contain the Failed SOP Instance UID List Attribute

- Pending shall not contain the Failed SOP Instance UID List Attribute (no Data Set)

##### C.4.3.1.4 Status

Table C.4-3 defines the specific status code values that might be returned in a C-GET response. General status code values and fields related to status code values are defined for C-GET DIMSE Service in PS3.7.

Table C.4-3. C-GET Response Status Values

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,1021) (0000,1022) (0000,1023)
| Error: Data Set does not match SOP Class | A900 | (0000,0901) (0000,0902)
| Failed: Unable to process | Cxxx | (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,1021) (0000,1022) (0000,1023)
Success | Sub-operations Complete - No Failures or Warnings | 0000 | (0000,1021) (0000,1022) (0000,1023)
Pending | Sub-operations are continuing | FF00 | (0000,1020) (0000,1021) (0000,1022) (0000,1023)

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

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table C.4-3 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.

##### C.4.3.1.5 Number of Remaining Sub-Operations

Inclusion of the Number of Remaining Sub-operations is conditional based upon the status in the C-GET response. The Number of Remaining Sub-operations specifies the number of Remaining C-STORE sub-operations necessary to complete the C-GET operation.

A C-GET response with a status of:

- Pending shall contain the Number of Remaining Sub-operations Attribute

- Canceled may contain the Number of Remaining Sub-operations Attribute

- Warning, Failure, or Success shall not contain the Number of Remaining Sub-operations Attribute.

##### C.4.3.1.6 Number of Completed Sub-Operations

Inclusion of the Number of Completed Sub-operations is conditional based upon the status in the C-GET response. The Number of Completed Sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that have completed successfully.

A C-GET response with a status of:

- Pending shall contain the Number of Completed Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Completed Sub-operations Attribute

##### C.4.3.1.7 Number of Failed Sub-Operations

Inclusion of the Number of Failed Sub-operations is conditional based upon the status in the C-GET response. The Number of Failed Sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that have Failed.

A C-GET response with a status of:

- Pending shall contain the Number of Failed Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Failed Sub-operations Attribute

##### C.4.3.1.8 Number of Warning Sub-Operations

Inclusion of the Number of Warning Sub-operations is conditional based upon the status in the C-GET response. The Number of Warning Sub-operations specifies the number of C-STORE sub-operations generated by the requested transfer that had a status of Warning.

A C-GET response with a status of:

- Pending shall contain the Number of Warning Sub-operations Attribute

- Canceled, Warning, Failure, or Success may contain the Number of Warning Sub-operations Attribute

#### C.4.3.2 C-GET SCU Behavior

This Section discusses both the baseline and extended behavior of the C-GET SCU.

##### C.4.3.2.1 Baseline Behavior of SCU

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

- The SCU shall have proposed sufficient presentation contexts at Association establishment time to accommodate expected C-STORE sub-operations that shall 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 supply a single value in the Unique Key Attribute for each level above the Query/Retrieve level. For the level of retrieve, the SCU shall supply a single value for one unique key if the level of the retrieve is above the STUDY level and shall supply one UID, or a list of UIDs if a retrieval of several items is desired and the retrieve level is STUDY, SERIES or IMAGE.

- The SCU shall interpret C-GET responses with status equal to Pending during the processing of the C-STORE sub-operations. These responses shall indicate the number of Remaining, Completed, Failed, 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 shall indicate 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:

  - Success to indicate that all sub-operations were successfully completed

  - Warning to indicate one or more sub-operations were successfully completed and one or more unsuccessful or all sub-operations had a status of warning

  - Failure or Refused to indicate all sub-operations were unsuccessful

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

##### C.4.3.2.2 Extended Behavior of SCU

Extended SCU behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCU behavior shall be supported with respect to that option. Extended SCU behavior includes all baseline behavior with the following option:

- Relational-retrieve

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.3.2.2.1 Relational-Retrieve

The C-GET Service with relational-retrieve removes the restriction that the SCU supply Unique Key values for levels above the Query/Retrieve level to help identify an entity at the level of the retrieval. Hence, the Identifier of a C-GET request may retrieve:

- all Composite Object Instances related to a study by providing a Study Instance UID (0020,000D)

- all Composite Object Instances related to a series by providing a Series Instance UID (0020,000E)

- individual Composite Object Instances by providing a list of SOP Instance UIDs (0008,0018)

###### C.4.3.2.2.2 Enhanced Multi-Frame Image Conversion

The C-GET Service with Enhanced Multi-Frame Image Conversion allows for selection of the default or an alternative view of the instances represented by the Information Model, and hence the retrieval of either the legacy or the converted images, together with any unconverted instances, all of which are required to be processed to maintain referential integrity within the scope of the Patient.

Support for Enhanced Multi-Frame Image Conversion allows the SCU to specify the Attribute Query/Retrieve View (0008,0053) in the Request Identifier with a value of either "CLASSIC" or "ENHANCED".

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then the SCU requests that the SCP retrieve all the requested instances it possesses, as received.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then the SCU requests that the SCP retrieve all the Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then the SCU requests that the SCP retrieve all the Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted.

### Note

1. The C-GET SCU acting as a C-STORE SCP may assume that no duplicate information will be provided. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-GET will not return both series.

2. The C-GET SCU acting as a C-STORE SCP will need to support the necessary SOP Classes for converted instances, otherwise the C-STORE sub-operations will fail in the normal manner and this will be reflected in the C-GET responses.

3. The Query Information Model is unchanged, and the same unique, required and optional keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

4. The Query/Retrieve View is still required in an IMAGE or SERIES level request identifier, even though the requested unique key (s) are unambiguous, and the view is in a sense "redundant", because the conversion that created the requested instances may not have been executed yet. It is not permitted to specify a view that is inconsistent with the requested unique key(s).

#### C.4.3.3 C-GET SCP Behavior

This Section discusses both the baseline and extended behavior of the C-GET SCP.

##### C.4.3.3.1 Baseline Behavior of SCP

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

- The SCP shall identify a set of Entities at the level of the retrieval based upon the values in the Unique Keys in the Identifier of the C-GET request. The SCP shall initiate C-STORE sub-operations for the corresponding storage 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 stored SOP Instances related to the Patient ID, List of Study Instance UIDs, List of Series Instance UIDs, or List of SOP Instance UIDs depending on the Query/Retrieve level specified in the C-GET request

- A sub-operation is considered Failed 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, Failed, or Refused. The status contained in the C-GET response shall contain:

  - Success if all sub-operations were successfully completed

  - Warning if one or more sub-operations were successfully completed and one or more sub-operations were unsuccessful or had a status of warning

  - Warning if all sub-operations had a status of Warning

  - Failure or Refused if all sub-operations were unsuccessful

- 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 Section C.6.1.1.5.1), only one of the alternate encodings of an image shall be included in the set of object instances retrieved by a C-GET request at the Patient, Study, or Series level.

  ### Note

  For retrieval of images with alternate encodings using a C-GET request at the Patient, Study, or Series level, the SCP may select the appropriately encoded Instance for the retrieval based on identity of the SCU, transfer syntaxes accepted in the C-STORE Association Negotiation, or other factors.

##### C.4.3.3.2 Extended Behavior of SCP

Extended SCP behavior shall be negotiated at Association establishment time. If an option within the extended behavior is not agreed upon in the negotiation, then only baseline SCP behavior shall be performed with respect to that option. Extended SCP behavior includes all baseline behavior with the following option:

- Relational-retrieve

- Enhanced Multi-Frame Image Conversion

More than one option may be agreed upon.

###### C.4.3.3.2.1 Relational-Retrieve

The C-GET Service with relational-retrieve removes the restriction that the SCU supply Unique Key values for levels above the Query/Retrieve level to help identify an entity at the level of the retrieval. Hence, the Identifier of a C-GET request may retrieve:

- all Composite Object Instances related to a study by providing a Study Instance UID

- all Composite Object Instances related to a series by providing a Series Instance UID

- individual Composite Object Instances by providing a list of SOP Instance UIDs

###### C.4.3.3.2.2 Enhanced Multi-Frame Image Conversion

If Query/Retrieve View (0008,0053) is not present in the Request Identifier, then 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 that correspond to the instances it possesses, as received, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

If Query/Retrieve View (0008,0053) is present with a value of "CLASSIC", then 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 that correspond to the Classic single frame Instances (converted from Enhanced multi-frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

If Query/Retrieve View (0008,0053) is present with a value of "ENHANCED", then 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 that correspond to the Enhanced multi-frame Instances (converted from Classic single frame Instances if required), as well as any instances that were converted to preserve referential integrity, and any that did not need to be converted, and shall initiate C-STORE sub-operations for all the corresponding storage SOP Instances.

### Note

1. The C-GET SCP acting as a C-STORE SCU will not send information that is duplicated to the C-GET SCU acting as a C-STORE SCP. For example, if an entire series of single frame instances can be converted to a separate series of converted instances, a STUDY level C-GET will not send both series.

2. The Query Information Model is unchanged, and the same unique, required and optional keys are equally applicable to both views, except that the values for the SERIES and IMAGE level queries will be different and will depend on the converted instance content.

3. The Query/Retrieve View is still required in an IMAGE or SERIES level request identifier, even though the requested unique key(s) are unambiguous.

## C.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. AEs supporting DICOM Query/Retrieve SOP Classes utilize Association establishment negotiation by defining the use of Application Association Information. See PS3.7 for an overview of Association negotiation.

SOP Classes of the Query/Retrieve Service Class, which include query services based on the C-FIND operation, may use SOP Class Extended Negotiation Sub-Item to negotiate options such as Relational-queries and Enhanced Multi-Frame Image Conversion.

SOP Classes of the Query/Retrieve Service Class, which include retrieval services based on the C-MOVE and C-GET operations, may use the SOP Class Extended Negotiation Sub-Item to negotiate relational-retrieval and Enhanced Multi-Frame Image Conversion.

SOP Classes of the Query/Retrieve Service Class, which include retrieval services based on the C-GET operation, use the SCP/SCU Role Selection Sub-Item to identify the SOP Classes that may be used for retrieval.

### C.5.1 Association Negotiation for C-FIND SOP Classes

The following negotiation rules apply to DICOM SOP Classes and Specialized DICOM SOP Classes of the Query/Retrieve Service Class that include the C-FIND operation.

The Association-requester (query SCU role) shall convey in the A-ASSOCIATE request:

- one Abstract Syntax, in a Presentation Context, for each query based SOP Class supported

- optionally, one SOP Class Extended Negotiation Sub-Item, for each query based SOP Class

The Association-acceptor (query SCP role) of an A-ASSOCIATE request shall accept:

- one Abstract Syntax, in a Presentation Context, for each query based SOP Class supported

- optionally, one SOP Class Extended Negotiation Sub-Item, for each query based SOP Class

#### C.5.1.1 SOP Class Extended Negotiation

The SOP Class Extended Negotiation allows, at Association establishment, peer DICOM AEs to exchange application Association information defined by specific SOP Classes. This is achieved by defining the Service-class-application-information field. The Service-class-application-information field is used to define support for relational-queries, combined date time matching, fuzzy semantic matching of person names, timezone query adjustment and Enhanced Multi-Frame Image Conversion.

This negotiation is optional. If absent, the default conditions shall be:

- no relational-query support

- separate (independent) range matching of date and time Attributes

- literal matching of person names with case sensitivity unspecified

- timezone query adjustment unspecified

- no Enhanced Multi-Frame Image Conversion support

The Association-requester, for each SOP Class, may use one SOP Class Extended Negotiation Sub-Item. The SOP Class is identified by the corresponding Abstract Syntax Name (as defined by PS3.7) followed by the Service-class-application-information field. This field defines one or more sub-fields:

- relational-query support by the Association-requester

- combined date and time range matching by the Association-requester

- literal or fuzzy semantic matching of person names by the Association-requester

- timezone query adjustment by the Association-requester

- Enhanced Multi-Frame Image Conversion support by the Association-requester

The Association-acceptor shall return a single byte field (single sub-field) if offered a single byte field (single sub-field) by the Association-requester. The Association-acceptor may return either a single byte field (single sub-field) or a multiple byte field if offered a multiple byte field by the Association-requester. A one byte response to a multiple byte request means that the missing sub-fields shall be treated as 0 values.

### Note

The restriction to return only a single byte field if that was all that was offered is because the original DICOM standard only contained one byte and older systems may not be expecting more.

The Association-acceptor, for each sub-field of the SOP Class Extended Negotiation Sub-Item offered, either accepts the Association-requester proposal by returning the same value (1) or turns down the proposal by returning the value (0).

If the SOP Class Extended Negotiation Sub-Item is not returned by the Association-acceptor then relational-queries are not supported over the Association (default condition).

If the SOP Class Extended Negotiation Sub-Items do not exist in the A-ASSOCIATE indication they shall be omitted in the A-ASSOCIATE response.

##### C.5.1.1.1 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-RQ)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. Table C.5-1 defines the Service-class-application-information field for DICOM Query/Retrieve SOP Classes and Specialized DICOM Query/Retrieve SOP Classes that include the C-FIND operation. This field may be either one or more bytes in length (i.e., item bytes 2, 3, 4 and 5 are optional).

Table C.5-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Relational-queries | This byte field defines relational-query support by the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - relational queries not supported 1 - relational queries supported
2 | Date-time matching | This byte field defines whether or not combined date and time Attribute range matching is requested by the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - combined matching not requested 1 - combined matching requested
3 | Fuzzy semantic matching of person names | This byte field defines whether or not fuzzy semantic person name Attribute matching is requested by the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - fuzzy semantic matching not requested 1 - fuzzy semantic matching requested
4 | Timezone query adjustment | This byte field defines whether or not the Attribute Timezone Offset From UTC (0008,0201) shall be used to adjust the query meaning for time and datetime fields in queries. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Timezone query adjustment not requested 1 - Timezone query adjustment requested
5 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

##### C.5.1.1.2 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-AC)

The SOP Class Extended Negotiation Sub-Item is made of a sequence of mandatory fields as defined by PS3.7. Table C.5-2 defines the Service-class-application-information field for DICOM Query/Retrieve SOP Classes and Specialized DICOM Query/Retrieve SOP Classes that include the C-FIND operation. This field may be either one or more bytes in length (i.e., item bytes 2, 3, 4 and 5 are optional).

Table C.5-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Relational-queries | This byte field defines relational-query support for the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - relational-queries not supported 1 - relational-queries supported
2 | Date-time matching | This byte field defines whether or not combined date and time Attribute range matching will be performed by the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - combined matching not performed 1 - combined matching performed
3 | Fuzzy semantic matching of person names | This byte field defines whether or not fuzzy semantic person name Attribute matching will be performed by the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - fuzzy semantic matching not performed 1 - fuzzy semantic matching performed
4 | Timezone query adjustment | This byte field defines whether or not the Attribute Timezone Offset From UTC (0008,0201) shall be used to adjust the query meaning for time and datetime fields in queries. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Timezone adjustment of queries not performed 1 - Timezone adjustment of queries performed
5 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

### C.5.2 Association Negotiation for C-MOVE SOP Classes

The following negotiation rules apply to DICOM SOP Classes and Specialized DICOM SOP Classes of the Query/Retrieve Service Class that include the C-MOVE operation.

The Association-requester (retrieval SCU role) shall convey in the A-ASSOCIATE request:

- one Abstract Syntax, in a Presentation Context, for each retrieval based SOP Class supported

- optionally, one SOP Class Extended Negotiation Sub-Item, for each retrieval based SOP Class

The Association-acceptor (retrieval SCP role) of an A-ASSOCIATE request shall accept:

- one Abstract Syntax, in a Presentation Context, for each retrieval based SOP Class supported

- optionally, one SOP Class Extended Negotiation Sub-Item, for each retrieval based SOP Class

#### C.5.2.1 SOP Class Extended Negotiation

The SOP Class Extended Negotiation allows, at Association establishment, peer DICOM AEs to exchange application Association information defined by specific SOP Classes. This is achieved by defining the Service-class-application-information field. The Service-class-application-information field is used to define support for relational-retrievals.

This negotiation is optional. If absent, the default condition shall be:

- no relational-retrieval support

- no Enhanced Multi-Frame Image Conversion support

The Association-requester, for each SOP Class, may use one SOP Class Extended Negotiation Sub-Item. The SOP Class is identified by the corresponding Abstract Syntax Name (as defined by PS3.7) followed by the Service-class-application-information field. This field defines:

- relational-retrieval support by the Association-requester

- Enhanced Multi-Frame Image Conversion support by the Association-requester

The Association-acceptor shall return a single byte field (single sub-field) if offered a single byte field (single sub-field) by the Association-requester. The Association-acceptor may return either a single byte field (single sub-field) or a multiple byte field if offered a multiple byte field by the Association-requester. A one byte response to a multiple byte request means that the missing sub-fields shall be treated as 0 values.

### Note

The restriction to return only a single byte field if that was all that was offered is because the original DICOM standard only contained one byte and older systems may not be expecting more.

The Association-acceptor, for each SOP Class Extended Negotiation Sub-Item offered, either accepts the Association-requester proposal by returning the same value (1) or turns down the proposal by returning the value (0).

If the SOP Class Extended Negotiation Sub-Item is not returned by the Association-acceptor then relational-retrievals and Enhanced Multi-Frame Image Conversion are not supported (default condition).

If the SOP Class Extended Negotiation Sub-Items do not exist in the A-ASSOCIATE indication they shall be omitted in the A-ASSOCIATE response.

##### C.5.2.1.1 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-RQ)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. Table C.5-3 defines the Service-class-application-information field for DICOM Query/Retrieve SOP Classes and Specialized DICOM Query/Retrieve SOP Classes that include the C-MOVE and C-GET operations.

Table C.5-3. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Relational-retrieval | This byte field defines relational-retrieval support by the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - relational-retrieval not supported 1 - relational-retrieval supported
2 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

##### C.5.2.1.2 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-AC)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. Table C.5-4 defines the Service-class-application-information field for DICOM Query/Retrieve SOP Classes and Specialized DICOM Query/Retrieve SOP Classes that include the C-MOVE and C-GET operations.

Table C.5-4. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Relational-retrieval | This byte field defines relational-retrieval support for the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - relational-retrievals not supported 1 - relational-retrievals supported
2 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

### C.5.3 Association Negotiation for C-GET SOP Classes

When an SCP performs the C-GET operation it induces a C-STORE operation for the purpose of transmitting composite SOP Instances for Storage. This induced C-STORE operation (called a sub-operation) requires a switch from the C-GET Presentation Context to a Presentation Context that supports the specific C-STORE sub-operation.

The following negotiation rules apply to retrieval based DICOM Query/Retrieve SOP Classes and Specialized DICOM Query/Retrieve SOP Classes that include the C-GET operation.

The Association-requester (retrieve SCU role) in the A-ASSOCIATE request shall convey:

1. C-GET operation support with:

   - one Abstract Syntax, in a Presentation Context, for each SOP Class supported

   - and optionally, one SOP Class Extended Negotiation Sub-Item, for each retrieval based SOP Class

2. Induced Storage sub-operation support where the SOP Class (in the retrieval SCU role) is acting as a Storage SOP Class in the SCP Role. See Figure C.5-1. For each supported Storage SOP Class, the A-ASSOCIATE request contains:

   - one Abstract Syntax in a Presentation Context

   - one SCP/SCU Role Selection Negotiation Sub-item with the SCP-role field set to indicate support of the SCP role. The SCP/SCU Role Selection Negotiation shall be used as defined in PS3.7.

Figure C.5-1. An Example of the Sub-Operation SCU/SCP Roles

### Note

This negotiation does not place any requirements on the SCU-flag of the SCP/SCU Role Selection Negotiation Sub-Item. It may be set if the Association-requester supports the Storage Service Class in the SCU role.

The Association-acceptor (retrieve SCP role) in the A-ASSOCIATE response shall convey:

1. C-GET operation support with:

   - one Abstract Syntax, in a Presentation Context, for each SOP Class supported

2. Induced Storage sub-operation support where the SOP Class (using the retrieval SCP role) is acting as a Storage SOP Class in the SCU Role. See Figure C.5-1. For each supported Storage SOP Class, the A-ASSOCIATE response contains both:

   - one Abstract Syntax, in a Presentation Context

   - one SCP/SCU Role Selection Negotiation Sub-item with the SCP-role field set to indicate the acceptance of the Association-requester's support of the SCP role. The SCP/SCU Role Selection Negotiation shall be used as defined in PS3.7.

### Note

The negotiation does not place any requirements on the SCU-flag of the SCP/SCU Role Selection Negotiation Sub-Item. It may be set if the Association-acceptor accepts the Storage SCP role. Figure C.5-2 illustrates an example of the retrieve (C-GET) negotiation.

Figure C.5-2 illustrates an example of the retrieve (C-GET) negotiation.

#### C.5.3.1 SOP Class Extended Negotiation

The SOP Class Extended Negotiation allows, at Association establishment, peer DICOM AEs to exchange application Association information defined by specific SOP Classes.

This is achieved by defining the Service-class-application-information field. The Service-class-application-information field is used to define support for relational-retrievals and alternative views for Enhanced Multi-Frame Image Conversion.

Figure C.5-2. An Example of the Retrieve (C-GET) Negotiation

Extended negotiation for SOP Classes based on the retrieval services that include C-GET operations is identical to the negotiation defined for C-MOVE, which is defined in Section C.5.2.1 of this Annex.

Extended negotiation for the SOP Classes of the Storage Service Class (for the C-STORE sub-operation) is defined in Annex B.

## C.6 SOP Class Definitions

### C.6.1 Patient Root SOP Class Group

In the Patient Root Query/Retrieve Information Model, the information is arranged into four levels that correspond to one of the four values in element (0008,0052) shown in Table C.6.1-1.

Table C.6.1-1. Query/Retrieve Level Values for Patient Root

Query/Retrieve Level | Value in (0008,0052)
--- | ---
Patient Information | PATIENT
Study Information | STUDY
Series Information | SERIES
Composite Object Instance Information | IMAGE

### Note

The use of the word "Images" rather than "Composite Object Instances" is historical to allow backward compatibility with previous versions of the standard. It should not be taken to mean that Composite Object Instances of other than image type are not included at the level indicated by the value IMAGE.

#### C.6.1.1 Patient Root Query/Retrieve Information Model

##### C.6.1.1.1 E/R Model

The Patient Root Query/Retrieve Information Model may be represented by the entity relationship diagram shown in Figure C.6-1.

Figure C.6-1. Patient Root Query/Retrieve Information Model E/R Diagram

##### C.6.1.1.2 Patient Level

Table C.6-1 defines the Attributes at the Patient Query/Retrieve level of the Patient Root Query/Retrieve Information Model.

### Note

1. A description of the Attributes of this Information Model is contained in Section C.3 of this part.

2. Although the Patient ID may not be globally unique, the Study Instance UID is globally unique ensuring that no two studies may be misidentified. The scope of uniqueness of the Patient ID may be specified using the Issuer of Patient ID (0010,0021).

3. Previously, Other Patient IDs (0010,1000) was included in this table. This Attribute have been retired. See PS3.4 2017a.

Table C.6-1. Patient Level Attributes for the Patient Root Query/Retrieve Information Model

Attribute Name | Tag | Type
--- | --- | ---
Patient's Name | (0010,0010) | R
Patient ID | (0010,0020) | U
Issuer of Patient ID | (0010,0021) | O
Referenced Patient Sequence | (0008,1120) | O
>Referenced SOP Class UID | (0008,1150) | O
>Referenced SOP Instance UID | (0008,1155) | O
Patient's Birth Date | (0010,0030) | O
Patient's Birth Time | (0010,0032) | O
Patient's Sex | (0010,0040) | O
Other Patient IDs Sequence | (0010,1002) | O
Other Patient Names | (0010,1001) | O
Ethnic Group | (0010,2160) | O
Patient Comments | (0010,4000) | O
Number of Patient Related Studies | (0020,1200) | O
Number of Patient Related Series | (0020,1202) | O
Number of Patient Related Instances | (0020,1204) | O
All other Attributes at Patient Level |  | O

##### C.6.1.1.3 Study Level

Table C.6-2 defines the keys at the Study Information level of the Patient Root Query/Retrieve Information Model.

### Note

1. A description of the Attributes of this Information Model is contained in Section C.3 of this Part.

2. Although the Patient ID may not be globally unique, the Study Instance UID is globally unique ensuring that no two studies may be misidentified. The scope of uniqueness of the Patient ID may be specified using the Issuer of Patient ID (0010,0021).

Table C.6-2. Study Level Keys for the Patient Root Query/Retrieve Information Model

Attribute Name | Tag | Type
--- | --- | ---
Study Date | (0008,0020) | R
Study Time | (0008,0030) | R
Accession Number | (0008,0050) | R
Study ID | (0020,0010) | R
Study Instance UID | (0020,000D) | U
Modalities in Study | (0008,0061) | O
SOP Classes in Study | (0008,0062) | O
Anatomic Regions in Study Code Sequence | (0008,0063) | O
Referring Physician's Name | (0008,0090) | O
Study Description | (0008,1030) | O
Procedure Code Sequence | (0008,1032) | O
>Code Value | (0008,0100) | O
>Coding Scheme Designator | (0008,0102) | O
>Coding Scheme Version | (0008,0103) | O
>Code Meaning | (0008,0104) | O
Name of Physician(s) Reading Study | (0008,1060) | O
Admitting Diagnoses Description | (0008,1080) | O
Referenced Study Sequence | (0008,1110) | O
>Referenced SOP Class UID | (0008,1150) | O
>Referenced SOP Instance UID | (0008,1155) | O
Patient's Age | (0010,1010) | O
Patient's Size | (0010,1020) | O
Patient's Weight | (0010,1030) | O
Occupation | (0010,2180) | O
Additional Patient History | (0010,21B0) | O
Other Study Numbers | (0020,1070) | O
Number of Study Related Series | (0020,1206) | O
Number of Study Related Instances | (0020,1208) | O
All other Attributes at Study Level |  | O

##### C.6.1.1.4 Series Level

Table C.6-3 defines the keys at the Series Information level of the Patient Root Query/Retrieve Information Model.

Table C.6-3. Series Level Attributes for the Patient Root Query/Retrieve Information Model

Attribute Name | Tag | Type
--- | --- | ---
Modality | (0008,0060) | R
Series Number | (0020,0011) | R
Series Instance UID | (0020,000E) | U
Number of Series Related Instances | (0020,1209) | O
All Other Attributes at Series Level |  | O

### Note

The Attribute Number of Series Related Instances is an optional key. It is, however recognized as a broadly needed key and return Attribute, which SCPs are strongly encouraged to support.

##### C.6.1.1.5 Composite Object Instance Level

Table C.6-4 defines the keys at the Composite Object Instance Information level of the Patient Root Query/Retrieve Information Model.

Table C.6-4. Composite Object Instance Level Keys for the Patient Root Query/Retrieve Information Model

Attribute Name | Tag | Type
--- | --- | ---
Instance Number | (0020,0013) | R
SOP Instance UID | (0008,0018) | U
SOP Class UID | (0008,0016) | O
Alternate Representation Sequence | (0008,3001) | O
>Series Instance UID | (0020,000E) | O
>SOP Class UID | (0008,1150) | O
>SOP Instance UID | (0008,1155) | O
>Purpose of Reference Code Sequence | (0040,A170) | O
>>Code Value | (0008,0100) | O
>>Coding Scheme Designator | (0008,0102) | O
>>Coding Scheme Version | (0008,0103) | O
>>Code Meaning | (0008,0104) | O
Related General SOP Class UID | (0008,001A) | O
Concept Name Code Sequence | (0040,A043) | O
>Code Value | (0008,0100) | O
>Coding Scheme Designator | (0008,0102) | O
>Coding Scheme Version | (0008,0103) | O
>Code Meaning | (0008,0104) | O
Content Template Sequence | (0040,A504) | O
>Template Identifier | (0040,DB00) | O
>Mapping Resource | (0008,0105) | O
Container Identifier | (0040,0512) | O
Specimen Description Sequence | (0040,0560) | O
>Specimen Identifier | (0040,0551) | O
>Specimen UID | (0040,0554) | O
All Other Attributes at Composite Object Instance Level |  | O

### Note

1. SOP Class UID (0008,0016) is an optional key, but it is strongly recommended that it always be returned by all SCPs, if matching is requested.

2. The Concept Name Code Sequence (0040,A043) and Content Template Sequence (0040,A504) are optional keys that are useful for identifying instances of various Structured Reporting Storage SOP Classes. It is strongly recommended that these keys be supported by the SCP for query against such instances.

###### C.6.1.1.5.1 Alternate Representation Sequence

The Alternate Representation Sequence (0008,3001) encodes a reference to an alternate encoding of the composite image identified in the Query response item. This alternate encoding may utilize a different SOP Class or have different image quality characteristics, but it shall be the same image.

### Note

The Alternate Representation Sequence (0008,3001) allows the query response about an original image to reference a lossy compressed version, and vice versa.

An image may be lossy compressed, e.g., for long-term archive purposes, and its SOP Instance UID changed. An application processing a SOP Instance that references the original image UID, e.g., a Structured Report, may query the C-FIND SCP for the image. The SCP returns a reference to an accessible version of the image even if the original SOP Instance is no longer available.

The Alternate Representation Sequence (0008,3001), if present in a Query Request Identifier, shall be zero-length, or shall contain a single zero-length Item. That is, only Universal Matching is defined for this Attribute.

The Alternate Representation Sequence (0008,3001), if present in the Query Response Identifier, may include zero or more Items. Each Alternate Representation Sequence Item in the Query Response Identifier shall include

- the Series Instance UID (0020,000E) if the alternately encoded image is in a different Series.

- the SOP Class UID (0008,0016) and SOP Instance UID (0008,0018) of the alternately encoded image.

- the Purpose of Reference Code Sequence (0040,A170), which shall describe the nature of the alternate encoding of the image. The Purpose of Reference Code Sequence (0040,A170) shall include only one Item. The Baseline Context Group for this Code Sequence is CID 7205.

##### C.6.1.1.6 Scope of the C-GET and C-MOVE Commands and Sub-Operations

A C-MOVE or C-GET request may be performed to any level of the Query/Retrieve Model. However, the transfer of Stored SOP Instances shall always take place at the Composite Object Instance level. A C-MOVE or C-GET where the Query/Retrieve level is the:

- PATIENT level indicates that all Composite Object Instances related to a Patient shall be transferred.

- STUDY level indicates that all Composite Object Instances related to a Study shall be transferred.

- SERIES level indicates that all Composite Object Instances related to a Series shall be transferred.

- IMAGE level indicates that selected individual Composite Object Instances shall be transferred.

### Note

In the Baseline 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).

#### C.6.1.2 Conformance Requirements

An implementation may conform to one of the SOP Classes of the Patient Root SOP Class Group as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### C.6.1.2.1 SCU Conformance

###### C.6.1.2.1.1 C-FIND SCU Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group shall support queries against the Query/Retrieve Information Model described in Section C.6.1.1 using the baseline C-FIND SCU Behavior described in Section C.4.1.2.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall state in its Conformance Statement whether it supports Optional Keys. If it supports Optional Keys, then it shall list the Optional Keys that it supports.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall state in its Conformance Statement whether it may generate Relational-queries. If it supports Relational-queries, then it shall also support extended negotiation of relational-queries.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall state in its Conformance Statement whether or not it supports extended negotiation of combined date-time matching and/or fuzzy semantic matching of person names.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when encoding queries and interpreting responses.

###### C.6.1.2.1.2 C-MOVE SCU Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall support transfers against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-MOVE SCU Behavior described in Section C.4.2.2.

###### C.6.1.2.1.3 C-GET SCU Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU shall support retrievals against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-GET SCU Behavior described in Section C.4.3.2.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCU, which generates retrievals using the C-GET operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

##### C.6.1.2.2 SCP Conformance

###### C.6.1.2.2.1 C-FIND SCP Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group shall support queries against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-FIND SCP Behavior described in Section C.4.1.3.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports Optional Keys. If it supports Optional Keys, then it shall list the Optional Keys that it supports.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports Relational-queries. If it supports Relational-queries, then it shall also support extended negotiation of relational-queries.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall state in its Conformance Statement whether or not it supports extended negotiation of combined date-time matching and/or fuzzy semantic matching of person names. If fuzzy semantic matching of person names is supported, then the mechanism for fuzzy semantic matching shall be specified.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports case-insensitive matching for PN VR Attributes and list Attributes for which this applies.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when interpreting queries, performing matching and encoding responses.

###### C.6.1.2.2.2 C-MOVE SCP Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall support transfers against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-MOVE SCP Behavior described in Section C.4.2.3.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP, which generates transfers using the C-MOVE operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### C.6.1.2.2.3 C-GET SCP Conformance

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP shall support retrievals against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-GET SCP Behavior described in Section C.4.3.3.

An implementation that conforms to one of the SOP Classes of the Patient Root SOP Class Group as an SCP, which generates retrievals using the C-GET operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

#### C.6.1.3 SOP Classes

The SOP Classes in the Patient Root Query SOP Class Group of the Query/Retrieve Service Class identify the Patient Root Query/Retrieve Information Model, and the DIMSE-C operations supported. The Standard SOP Classes are listed in Table C.6.1.3-1.

Table C.6.1.3-1. SOP Classes for Patient Root Query/Retrieve

SOP Class Name | SOP Class UID
--- | ---
Patient Root Query/Retrieve Information Model - FIND | 1.2.840.10008.5.1.4.1.2.1.1
Patient Root Query/Retrieve Information Model - MOVE | 1.2.840.10008.5.1.4.1.2.1.2
Patient Root Query/Retrieve Information Model - GET | 1.2.840.10008.5.1.4.1.2.1.3

### C.6.2 Study Root SOP Class Group

In the Study Root Query/Retrieve Information Model, the information is arranged into three levels that correspond to one of the three values in element (0008,0052) shown in Table C.6.2-1.

Table C.6.2-1. Query/Retrieve Level Values for Study Root

Query/Retrieve Level | Value in (0008,0052)
--- | ---
Study Information | STUDY
Series Information | SERIES
Composite Object Instance Information | IMAGE

### Note

The use of the word "Images" rather than "Composite Object Instances" is historical to allow backward compatibility with previous versions of the standard. It should not be taken to mean that Composite Object Instances of other than image type are not included at the level indicated by the value IMAGE.

#### C.6.2.1 Study Root Query/Retrieve Information Model

##### C.6.2.1.1 E/R Model

The Study Root Query/Retrieve Information Model may be represented by the entity relationship diagram shown in Figure C.6-2.

Figure C.6-2. Study Root Query/Retrieve Information Model E/R Diagram

##### C.6.2.1.2 Study Level

Table C.6-5 defines the keys at the Study Information level of the Study Root Query/Retrieve Information Model.

### Note

1. A description of the Attributes of this Information Model is contained in Section C.3.

2. Although the Patient ID may not be globally unique, the Study Instance UID is globally unique ensuring that no two studies may be misidentified. The scope of uniqueness of the Patient ID may be specified using the Issuer of Patient ID (0010,0021).

3. Previously, Other Patient IDs (0010,1000) was included in this table. This Attribute have been retired. See PS3.4 2017a.

Table C.6-5. Study Level Keys for the Study Root Query/Retrieve Information Model

Attribute Name | Tag | Type
--- | --- | ---
Study Date | (0008,0020) | R
Study Time | (0008,0030) | R
Accession Number | (0008,0050) | R
Patient's Name | (0010,0010) | R
Patient ID | (0010,0020) | R
Study ID | (0020,0010) | R
Study Instance UID | (0020,000D) | U
Modalities in Study | (0008,0061) | O
SOP Classes in Study | (0008,0062) | O
Anatomic Regions in Study Code Sequence | (0008,0063) | O
Referring Physician's Name | (0008,0090) | O
Study Description | (0008,1030) | O
Procedure Code Sequence | (0008,1032) | O
>Code Value | (0008,0100) | O
>Coding Scheme Designator | (0008,0102) | O
>Coding Scheme Version | (0008,0103) | O
>Code Meaning | (0008,0104) | O
Name of Physician(s) Reading Study | (0008,1060) | O
Admitting Diagnoses Description | (0008,1080) | O
Referenced Study Sequence | (0008,1110) | O
>Referenced SOP Class UID | (0008,1150) | O
>Referenced SOP Instance UID | (0008,1155) | O
Referenced Patient Sequence | (0008,1120) | O
>Referenced SOP Class UID | (0008,1150) | O
>Referenced SOP Instance UID | (0008,1155) | O
Issuer of Patient ID | (0010,0021) | O
Patient's Birth Date | (0010,0030) | O
Patient's Birth Time | (0010,0032) | O
Patient's Sex | (0010,0040) | O
Other Patient IDs Sequence | (0010,1002) | O
Other Patient Names | (0010,1001) | O
Patient's Age | (0010,1010) | O
Patient's Size | (0010,1020) | O
Patient's Weight | (0010,1030) | O
Ethnic Group | (0010,2160) | O
Occupation | (0010,2180) | O
Additional Patient History | (0010,21B0) | O
Patient Comments | (0010,4000) | O
Other Study Numbers | (0020,1070) | O
Number of Study Related Series | (0020,1206) | O
Number of Study Related Instances | (0020,1208) | O
All other Attributes at Study Level |  | O

### Note

The use of the word "Images" rather than "Composite Object Instances" is historical, and should not be taken to mean that Composite Object Instances of other than image type are not included in the number.

##### C.6.2.1.3 Series Level

Attributes for the Series Level of the Study Root Query/Retrieve Information Model are the same as the Attributes for the Series Level of the Patient Root Query/Retrieve Information Model described in Section C.6.1.1.4.

##### C.6.2.1.4 Composite Object Instance Level

Attributes for the Composite Object Instance Level of the Study Root Query/Retrieve Information Model are the same as the Attributes for the Composite Object Instance Level of the Patient Root Query/Retrieve Information Model described in Section C.6.1.1.5.

##### C.6.2.1.5 Scope of the Get and Move Commands and Sub-Operations

A C-MOVE or C-GET request may be performed to any level of the Query/Retrieve Model. However, the transfer of Stored SOP Instances shall always take place at the Composite Object Instance level. A C-MOVE or C-GET where the Query/Retrieve level is the:

- STUDY level indicates that all Composite Object Instances related to a Study shall be transferred

- SERIES level indicates that all Composite Object Instances related to a Series shall be transferred

- IMAGE level indicates that selected individual Composite Object Instances shall be transferred

### Note

In the Baseline behavior, more than one entity may be retrieved if the Query/Retrieve Level is IMAGE, SERIES or STUDY, using List of UID matching,

#### C.6.2.2 Conformance Requirements

An implementation may conform to one of the SOP Classes of the Study Hierarchy SOP Class Group as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### C.6.2.2.1 SCU Conformance

###### C.6.2.2.1.1 C-FIND SCU Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group shall support queries against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-FIND SCU behavior described in Section C.4.1.2.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall state in its Conformance Statement whether it supports Optional Keys. If it supports Optional Keys, then it shall list the Optional Keys that it supports.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall be capable of generating queries using the Hierarchical Search. It shall not generate queries using Relational-queries unless the Relational-queries option has been successfully negotiated.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall state in its Conformance Statement whether it may generate Relational-queries. If it supports Relational Search, then it shall also support extended negotiation of relational-queries.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall state in its Conformance Statement whether or not it supports extended negotiation of combined date-time matching and/or fuzzy semantic matching of person names.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when encoding queries and interpreting responses.

###### C.6.2.2.1.2 C-MOVE SCU Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall support transfers against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-MOVE SCU Behavior described in Section C.4.2.2.

###### C.6.2.2.1.3 C-GET SCU Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU shall support retrievals against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-GET SCU Behavior described in Section C.4.3.2.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCU, which generates retrievals using the C-GET operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

##### C.6.2.2.2 SCP Conformance

###### C.6.2.2.2.1 C-FIND SCP Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group shall support queries against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-FIND SCP behavior described in Section C.4.1.3.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports Optional Keys. If it supports Optional Keys, then it shall list the Optional Keys that it supports.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports Relational Search. If it supports Relational Search, then it shall also support extended negotiation of relational-queries.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall state in its Conformance Statement whether or not it supports extended negotiation of combined date-time matching and/or fuzzy semantic matching of person names. If fuzzy semantic matching of person names is supported, then the mechanism for fuzzy semantic matching shall be specified.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall state in its Conformance Statement whether it supports case-insensitive matching for PN VR Attributes and list Attributes for which this applies.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when interpreting queries, performing matching and encoding responses.

###### C.6.2.2.2.2 C-MOVE SCP Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall support transfers against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-MOVE SCP Behavior described in Section C.4.2.3.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP, which generates transfers using the C-MOVE operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### C.6.2.2.2.3 C-GET SCP Conformance

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP shall support retrievals against the Query/Retrieve Information Model described in Section C.6.2.1 using the C-GET SCP Behavior described in Section C.4.3.3.

An implementation that conforms to one of the SOP Classes of the Study Root SOP Class Group as an SCP, which generates retrievals using the C-GET operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

#### C.6.2.3 SOP Classes

The SOP Classes in the Study Root SOP Class Group of the Query/Retrieve Service Class identify the Study Root Query/Retrieve Information Model, and the DIMSE-C operations supported. The Standard SOP Classes are listed in Table C.6.2.3-1.

Table C.6.2.3-1. SOP Classes for Study Root Query/Retrieve

SOP Class Name | SOP Class UID
--- | ---
Study Root Query/Retrieve Information Model - FIND | 1.2.840.10008.5.1.4.1.2.2.1
Study Root Query/Retrieve Information Model - MOVE | 1.2.840.10008.5.1.4.1.2.2.2
Study Root Query/Retrieve Information Model - GET | 1.2.840.10008.5.1.4.1.2.2.3

### C.6.3 Patient/Study Only SOP Class Group

Retired. See PS 3.4-2004.

# D Study Content Notification Service Class (Normative)

Retired. See PS 3.4-2004.

# E Patient Management Service Class (Normative)

Retired. See PS 3.4-2004.

# F Procedure Step SOP Classes (Normative)

## F.1 Overview

This Annex defines the Procedure Step SOP Classes.

### Note

This Annex formerly defined a Study Management Service Class that has been retired. See PS 3.4-2004.

### F.1.1 Scope

Retired. See PS 3.4-2004.

### F.1.2 Study Management Functional Model

Retired. See PS 3.4-2004.

### F.1.3 Study Management Information Model

Retired. See PS 3.4-2004.

### F.1.4 Study Management States

Retired. See PS 3.4-2004.

### F.1.5 Modality Performed Procedure Step Management States

The state information related to the Modality Performed Procedure Step is specified by the Modality Performed Procedure Step IOD in the Attribute Performed Procedure Step Status (0040,0252).

The Performed Procedure Step Object represents only the "performed" segment of the real-world procedure step and not the "scheduled" segment. The number of events is therefore limited; all events are initiated by the modality. The state "DISCONTINUED" means canceled or unsuccessfully terminated, which may happen when the performance of a Procedure Step has been started but cannot be finished by the modality. The modality shall convey this state change to the information system (the SCP), to allow the information system to reschedule or cancel the related Procedure Step. The state "COMPLETED" means that the acquisition of Composite SOP Instances has been successfully completed and the SCU has provided all required Attribute values for the Performed Procedure Step.

Table F.1-3 describes the valid Modality Performed Procedure Step states.

Table F.1-3. Modality Performed Procedure Step States

State | Description
--- | ---
In Progress | Modality Performed Procedure Step created and execution in progress
Discontinued | Execution of Modality Performed Procedure Step canceled by modality
Completed | Modality Performed Procedure Step completed

Table F.1-4 defines the valid state transitions for the Performed Procedure Steps. For each of the above defined states the valid state resulting from the occurrence of events is specified. These state transitions are managed by the Modality Performed Procedure Step SOP Class.

Table F.1-4. Modality Performed Procedure Step State Transition Diagram

| States
--- | ---
Events | In Progress | Discontinued | Completed
Performed Procedure Step Discontinued | Discontinued |  |
Performed Procedure Step Completed | Completed |  |

### F.1.6 General Purpose Scheduled Procedure Step Management States (Retired)

Retired. See PS 3.4-2011.

### F.1.7 General Purpose Performed Procedure Step Management States (Retired)

Retired. See PS 3.4-2011.

## F.2 Conformance Overview

The application-level services addressed by this Service Class Definition are specified via the following distinct SOP Classes:

1. Modality Performed Procedure Step SOP Class

2. Modality Performed Procedure Step Notification SOP Class

3. Modality Performed Procedure Step Retrieve SOP Class

Each SOP Class operates on a subset of the Modality Performed Procedure Step IOD and specifies the Attributes, operations, notifications, and behavior applicable to the SOP Class. Conformance of Application Entities shall be defined by selecting one or more of the Study and Study Component Management SOP and Meta SOP Classes. For each SOP Class conformance requirements shall be specified in terms of the Service Class Provider (SCP) and the Service Class User (SCU).

### F.2.1 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure specified in PS3.7 shall be used to negotiate the supported SOP Classes.

Support for the SCP/SCU role selection negotiation is mandatory. The SOP Class Extended Negotiation shall not be supported.

### Note

Event notification is a process that logically extends across multiple Associations. SCP implementations should support a local table of SCUs to which event notifications are to be sent.

## F.3 Detached Study Management SOP Class(Retired)

Retired. See PS 3.4-2004.

## F.4 Study Component Management SOP Class(Retired)

Retired. See PS 3.4-2004.

## F.5 Study Management Meta SOP Class(Retired)

Retired. See PS 3.4-2004.

## F.6 Specialized SOP Class Conformance(Retired)

Retired. See PS 3.4-2004.

## F.7 Modality Performed Procedure Step SOP Class

### F.7.1 DIMSE Service Group

The DIMSE Services shown in Table F.7.1-1 are applicable to the Modality Performed Procedure Step IOD under the Modality Performed Procedure Step SOP Class.

Table F.7.1-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-SET | M/M

The DIMSE Services and Protocols are specified in PS3.7

### F.7.2 Operations

The Application Entity that claims conformance to this SOP Class as an SCU shall be permitted to invoke the following operations and the Application Entity that claims conformance as an SCP shall be capable of providing the following operations.

#### F.7.2.1 Create Modality Performed Procedure Step SOP Instance

This operation allows an SCU to create an instance of the Modality Performed Procedure Step SOP Class and provide information about a specific real-world Performed Procedure Step that is under control of the SCU. This operation shall be invoked through the DIMSE N-CREATE Service.

### Note

The modality should inform the Information System as soon as possible that the performance of the Procedure Step has been started by sending the N-CREATE Service Request. This allows an SCP of the Modality Worklist SOP Class (if supported) to update the Modality Worklist. Some of the Attribute values are already known at the beginning of the Procedure Step, they are required to be sent in the N-CREATE command. Other mandatory Attributes are known only at the end of the Performed Procedure Step, they are assigned a value in the N-SET command.

The same SOP Instance UID is shared by all three Modality Performed Procedure Step SOP Classes. This means that the SOP Instance created and set using the services of the Modality Performed Procedure Step SOP Class can be retrieved using its SOP Instance UID within the service of the Modality Performed Procedure Step Retrieve SOP Class. Changes in its state can be notified by using its SOP Instance UID within the service of the Modality Performed Procedure Step Notification SOP Class. The SOP Class UID specified in the DIMSE N-CREATE and N-SET request primitives shall be the UID of the Modality Performed Procedure Step SOP Class.

The Modality Performed Procedure Step SOP Instance UID shall not be used to identify a SOP Instance of the Study Component Service Class.

##### F.7.2.1.1 Modality Performed Procedure Step Subset Specification

The Application Entity that claims conformance to this SOP Class as an SCU must provide all Required Attributes as specified in Table F.7.2-1. Optional Attributes maintained by the SCP may be provided as well. The Application Entity that claims conformance as an SCP to this SOP Class shall support the subset of the Modality Performed Procedure Step Attributes specified in Table F.7.2-1.

Table F.7.2-1. Modality Performed Procedure Step SOP Class N-CREATE, N-SET and Final State Attributes

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Requirement Type Final State (see Note 1)
--- | --- | --- | --- | ---
Specific Character Set | (0008,0005) | 1C/1C (Required if an extended or replacement character set is used) | 1C/1C (Required if an extended or replacement character set is used in an Attribute that is set) |
Performed Procedure Step Relationship
Scheduled Step Attribute Sequence | (0040,0270) | 1/1 | Not allowed |
>Study Instance UID | (0020,000D) | 1/1 | Not allowed |
>Referenced Study Sequence | (0008,1110) | 2/2 | Not allowed |
>>Referenced SOP Class UID | (0008,1150) | 1/1 | Not allowed |
>>Referenced SOP Instance UID | (0008,1155) | 1/1 | Not allowed |
>Accession Number | (0008,0050) | 2/2 | Not allowed |
>Issuer of Accession Number Sequence | (0008,0051) | 3/3 | Not allowed |
>>Local Namespace Entity ID | (0040,0031) | 1C/1C Required if Universal Entity ID (0040,0032) is not present; may be present otherwise | Not allowed |
>>Universal Entity ID | (0040,0032) | 1C/1C Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise. | Not allowed |
>>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
>Placer Order Number/Imaging Service Request | (0040,2016) | 3/3 | Not allowed |
>Order Placer Identifier Sequence | (0040,0026) | 3/3 | Not allowed |
>>Local Namespace Entity ID | (0040,0031) | 1C/1C Required if Universal Entity ID (0040,0032) is not present; may be present otherwise | Not allowed |
>>Universal Entity ID | (0040,0032) | 1C/1C Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise.. | Not allowed |
>>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
>Filler Order Number/Imaging Service Request | (0040,2017) | 3/3 | Not allowed |
>Order Filler Identifier Sequence | (0040,0027) | 3/3 | Not allowed |
>>Local Namespace Entity ID | (0040,0031) | 1C/1C Required if Universal Entity ID (0040,0032) is not present; may be present otherwise | Not allowed |
>>Universal Entity ID | (0040,0032) | 1C/1C Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise.. | Not allowed |
>>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
>Requested Procedure ID | (0040,1001) | 2/2 | Not allowed |
>Requested Procedure Code Sequence | (0032,1064) | 3/3 | Not allowed |
>>Code Value | (0008,0100) | 1/1 | Not allowed |
>>Coding Scheme Designator | (0008,0102) | 1/1 | Not allowed |
>>Coding Scheme Version | (0008,0103) | 3/3 | Not allowed |
>>Code Meaning | (0008,0104) | 1/1 | Not allowed |
>Requested Procedure Description | (0032,1060) | 2/2 | Not allowed |
>Scheduled Procedure Step ID | (0040,0009) | 2/2 | Not allowed |
>Scheduled Procedure Step Description | (0040,0007) | 2/2 | Not allowed |
>Scheduled Protocol Code Sequence | (0040,0008) | 2/2 | Not allowed |
>>Code Value | (0008,0100) | 1/1 | Not allowed |
>>Coding Scheme Designator | (0008,0102) | 1/1 | Not allowed |
>>Coding Scheme Version | (0008,0103) | 3/3 | Not allowed |
>>Code Meaning | (0008,0104) | 3/3 | Not allowed |
>>All other Attributes of the Scheduled Protocol Code Sequence |  | 3/3 | Not allowed |
Patient's Name | (0010,0010) | 2/2 | Not allowed |
Patient ID | (0010,0020) | 2/2 | Not allowed |
Issuer of Patient ID | (0010,0021) | 3/3 | Not allowed |
Issuer of Patient ID Qualifiers Sequence | (0010,0024) | 3/3 | Not allowed |
>Universal Entity ID | (0040,0032) | 3/3 | Not allowed |
>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
>All other Attributes of the Issuer of Patient ID Qualifiers Sequence |  | 3/3 | Not allowed |
Other Patient IDs Sequence | (0010,1002) | 3/3 | Not allowed |
>Patient ID | (0010,0020) | 3/3 | Not allowed |
>Issuer of Patient ID | (0010,0021) | 3/3 | Not allowed |
>Issuer of Patient ID Qualifiers Sequence | (0010,0024) | 3/3 | Not allowed |
>>All other Attributes of the Issuer of Patient ID Qualifiers Sequence |  | 3/3 | Not allowed |
Patient's Birth Date | (0010,0030) | 2/2 | Not allowed |
Patient's Sex | (0010,0040) | 2/2 | Not allowed |
Referenced Patient Sequence | (0008,1120) | 2/2 | Not allowed |
>Referenced SOP Class UID | (0008,1150) | 1/1 | Not allowed |
>Referenced Instance UID | (0008,1155) | 1/1 | Not allowed |
Admission ID | (0038,0010) | 3/3 | Not Allowed |
Issuer of Admission ID Sequence | (0038,0014) | 3/3 | Not allowed |
>Local Namespace Entity ID | (0040,0031) | 1C/1C Required if Universal Entity ID (0040,0032) is not present; may be present otherwise | Not allowed |
>Universal Entity ID | (0040,0032) | 1C/1C Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise.. | Not allowed |
>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
Service Episode ID | (0038,0060) | 3/3 | Not allowed |
Issuer of Service Episode ID Sequence | (0038,0064) | 3/3 | Not allowed |
>Local Namespace Entity ID | (0040,0031) | 1C/1C Required if Universal Entity ID (0040,0032) is not present; may be present otherwise | Not allowed |
>Universal Entity ID | (0040,0032) | 1C/1C Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise.. | Not allowed |
>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present. | Not allowed |
Service Episode Description | (0038,0062) | 3/3 | Not allowed |
Performed Procedure Step Information
Performed Procedure Step ID | (0040,0253) | 1/1 | Not allowed |
Performed Station AE Title | (0040,0241) | 1/1 | Not allowed |
Performed Station Name | (0040,0242) | 2/2 | Not allowed |
Performed Location | (0040,0243) | 2/2 | Not allowed |
Performed Procedure Step Start Date | (0040,0244) | 1/1 | Not allowed |
Performed Procedure Step Start Time | (0040,0245) | 1/1 | Not allowed |
Performed Procedure Step Status | (0040,0252) | 1/1 | 3/1 |
Performed Procedure Step Description | (0040,0254) | 2/2 | 3/2 |
Performed Procedure Type Description | (0040,0255) | 2/2 | 3/2 |
Procedure Code Sequence | (0008,1032) | 2/2 | 3/2 |
>Code Value | (0008,0100) | 1/1 | 1/1 |
>Coding Scheme Designator | (0008,0102) | 1/1 | 1/1 |
>Coding Scheme Version | (0008,0103) | 3/3 | 3/3 |
>Code Meaning | (0008,0104) | 3/3 | 3/3 |
Reason For Performed Procedure Code Sequence | (0040,1012) | 3/3 | 3/3 |
>Code Value | (0008,0100) | 1/1 | 1/1 |
>Coding Scheme Designator | (0008,0102) | 1/1 | 1/1 |
>Coding Scheme Version | (0008,0103) | 3/3 | 3/3 |
>Code Meaning | (0008,0104) | 1/1 | 1/1 |
Performed Procedure Step End Date | (0040,0250) | 2/2 | 3/1 | 1
Performed Procedure Step End Time | (0040,0251) | 2/2 | 3/1 | 1
Comments on the Performed Procedure Step | (0040,0280) | 3/3 | 3/3 |
Performed Procedure Step Discontinuation Reason Code Sequence | (0040,0281) | 3/3 | 3/3 |
>Code Value | (0008,0100) | 1/1 | 1/1 |
>Coding Scheme Designator | (0008,0102) | 1/1 | 1/1 |
>Coding Scheme Version | (0008,0103) | 3/3 | 3/3 |
>Code Meaning | (0008,0104) | 3/3 | 3/3 |
Image Acquisition Results
Modality | (0008,0060) | 1/1 | Not allowed |
Study ID | (0020,0010) | 2/2 | Not allowed |
Performed Protocol Code Sequence | (0040,0260) | 2/2 | 3/2 |
>Code Value | (0008,0100) | 1/1 | 1/1 |
>Coding Scheme Designator | (0008,0102) | 1/1 | 1/1 |
>Coding Scheme Version | (0008,0103) | 3/3 | 3/3 |
>Code Meaning | (0008,0104) | 3/3 | 3/3 |
>All other Attributes of the Performed Protocol Code Sequence |  | 3/3 | Not allowed |
Performed Series Sequence | (0040,0340) | 2/2 | 3/1 | 1 (see note 2)
>Performing Physician's Name | (0008,1050) | 2/2 | 2/2 | 2
>Protocol Name | (0018,1030) | 1/1 | 1/1 | 1
>Operators' Name | (0008,1070) | 2/2 | 2/2 | 2
>Series Instance UID | (0020,000E) | 1/1 | 1/1 | 1
>Series Description | (0008,103E) | 2/2 | 2/2 | 2
>Retrieve AE Title | (0008,0054) | 2/2 | 2/2 | 2
>Archive Requested | (0040,A494) | 3/3 | 3/3 |
>Referenced Image Sequence | (0008,1140) | 2/2 | 2/2 | See Section F.7.2.2.2
>>Referenced SOP Class UID | (0008,1150) | 1/1 | 1/1 |
>>Referenced SOP Instance UID | (0008,1155) | 1/1 | 1/1 |
>>Container Identifier | (0040,0512) | 3/3 | 3/3 |
>>Specimen Description Sequence | (0040,0560) | 3/3 | 3/3 |
>>>Specimen Identifier | (0040,0551) | 1/1 | 1/1 |
>>>Specimen UID | (0040,0554) | 1/1 | 1/1 |
>Referenced Non-Image Composite SOP Instance Sequence | (0040,0220) | 2/2 | 2/2 | See Section F.7.2.2.2
>>Referenced SOP Class UID | (0008,1150) | 1/1 | 1/1 |
>>Referenced SOP Instance UID | (0008,1155) | 1/1 | 1/1 |
>All other Attributes of the Performed Series Sequence |  | 3/3 | 3/3 |
All other Attributes of the Billing and Material Management Code Module |  | 3/3 | 3/3 |

### Note

1. The requirement for the final state is that which applies at the time that the Performed Procedure Step Status (0040,0252) is N-SET to a value of COMPLETED or DISCONTINUED, as described in Section F.7.2.2.2. It is only described if it is different from the SCP requirement for the N-CREATE.

2. The Performed Series Sequence (0040,0340) may not be empty (zero length) at the time that the Performed Procedure Step Status (0040,0252) is N-SET to a value of COMPLETED or DISCONTINUED. In other words a Series must exist for every Performed Procedure Step, though it may contain no Images or Non-Image Composite objects, if none were created, as described in Section F.7.2.2.2.

3. Attributes (0040,1006) Placer Order Number/Procedure and (0040,1007) Filler Order Number/Procedure were previously defined in DICOM. They are now retired (see PS3.3-1998).

4. Attributes (0040,2006) and (0040,2007) were previously defined in DICOM. They are now retired (see PS3.3-1998).

5. Only Attributes that are specified in a SOP Instance at N-CREATE may later be updated through the N-SET. If an SCU wishes to use the PPS Discontinuation Reason Code Sequence (0040,0281), it must create that Attribute (zero-length) during MPPS N-CREATE.

6. The Radiation Dose Module was previously defined in DICOM. This is now retired (see PS3.3-2017c).

##### F.7.2.1.2 Service Class User

The SCU shall specify in the N-CREATE request primitive the Class and Instance UIDs of the Modality Performed Procedure Step SOP Instance that is created and for which Attribute Values are to be provided.

### Note

This requirement facilitates the inclusion of relevant Attributes in the Composite SOP Instances generated during the Performed Procedure Step.

The SCU shall provide Attribute values for the Modality Performed Procedure Step SOP Class Attributes as specified in Table F.7.2-1. Additionally, values may be provided for optional Modality Performed Procedure Step IOD Attributes that are supported by the SCP. The encoding rules for Modality Performed Procedure Step Attributes are specified in the N-CREATE request primitive specification in PS3.7.

The SCU shall be capable of providing all required Attribute values to the SCP in the N-CREATE request primitive. The SCU may provide Attribute values for optional Attributes that are not maintained by the SCP. In such case the SCU shall function properly regardless of whether the SCP accepts values for those Attributes or not.

All Attributes shall be created before they can be set. Sequence Attributes shall be created before they can be filled. Sequence Item Attributes shall not be created at zero length.

### Note

Not all the Attributes that can be created can be set afterward (see Table F.7.2-1).

The SCU shall only send the N-CREATE request primitive with the value for the Attribute "Performed Procedure Step Status" (0040,0252) set to "IN PROGRESS".

### Note

1. It is assumed but not required that the SCU (the modality) received the Study Instance UID within the scope of the Basic Worklist Management SOP Class.

2. If the SCU has grouped multiple Requested Procedures into a single performed step the Study Instance UID (0020,000D) Attribute within the Scheduled Step Attributes Sequence (0040,0270) may be the Study Instance UID (0020,000D) for the study that contains all images and non-image composite instances created during performance of the current step. This value may be generated by the SCU and may be the same for all items of the sequence. In addition, the Referenced Study Sequence (0008,1110) may contain the Study Instance UIDs from the Requested Procedures being grouped. If Referenced Study Sequence (0008,1110) is present with an Item, the SOP Class UID of the Detached Study Management SOP Class (Retired) may be used in Referenced SOP Class UID (0008,1150).

3. If the SCU does not have available Scheduled Procedure Step data applicable to the current step, the SCU may generate a value for the Study Instance UID (0020,000D) Attribute within the Scheduled Step Attributes Sequence (0040,0270). This value of the Study Instance UID (0020,000D) may be stored in all images and non-image composite SOP instances created during performance of this step. All other Attributes within the Scheduled Step Attribute Sequence (0040,0270) may be set to zero length for 2/2 requirement types or absent for 3/3 requirement types (see Table F.7.2-1).

##### F.7.2.1.3 Service Class Provider

The N-CREATE operation allows the SCU to provide to the SCP selected Attribute values for a specific Modality Performed Procedure Step SOP Instance. This operation shall be invoked through the use of the DIMSE N-CREATE Service used in conjunction with the appropriate Modality Performed Procedure Step SOP Instance.

The SCP shall return, via the N-CREATE response primitive, the N-CREATE Response Status Code applicable to the associated request.

The SCP shall accept N-CREATE request primitives only if the value of the Attribute "Performed Procedure Step Status" (0040,0252) is "IN PROGRESS". If the Performed Procedure Step Status Attribute has another value, the SCP shall set the failure status code "Invalid Attribute value" (Code: 0106H) with an Attribute List.

### Note

The SCP may update the scheduling information on which the Modality Worklist is based, including the values of Study Date (0008,0020) and Study Time (0008,0030) using the earliest corresponding values of Performed Procedure Step Date (0040,0244) and Performed Procedure Step Time (0040,0245), in order to achieve consistency of Study level Attributes when multiple procedure steps are performed on different devices.

##### F.7.2.1.4 Status Codes

There are no specific status codes. See PS3.7 for response status codes.

#### F.7.2.2 Set Modality Performed Procedure Step Information

This operation allows an SCU to set Attribute Values of an instance of the Modality Performed Procedure Step SOP Class and provide information about a specific real-world Modality Performed Procedure Step that is under control of the SCU. This operation shall be invoked through the DIMSE N-SET Service.

##### F.7.2.2.1 Modality Performed Procedure Step IOD Subset Specification

The Application Entity that claims conformance to this SOP Class as an SCU may choose to modify a subset of the Attributes maintained by the SCP. The Application Entity that claims conformance as an SCP to this SOP Class shall support the subset of the Modality Performed Procedure Step Attributes specified in Table F.7.2-1.

The character set used for Attribute Values updated using the N-SET shall be the same as that specified by the N-CREATE Request Primitive.

##### F.7.2.2.2 Service Class User

The SCU shall specify in the N-SET request primitive the UID of the Modality Performed Procedure Step SOP Instance for which it wants to set Attribute Values.

The SCU shall be permitted to set Attribute values for any Modality Performed Procedure Step SOP Class Attribute specified in Table F.7.2-1. The SCU shall specify the list of Modality Performed Procedure Step SOP Class Attributes for which it wants to set the Attribute Values. The SCU shall provide, with one or more N-SET request primitives, the Attribute values specified in Table F.7.2-1. The encoding rules for Modality Performed Procedure Step Attributes are specified in the N-SET request primitive specification in PS3.7. The SCU shall only set Attribute Values that are already created with an N-CREATE request.

The SCU shall not send N-SET request primitives for a Modality Performed Procedure Step SOP Instance after a N-SET request primitive with a value for the Attribute "Performed Procedure Step Status" (0040,0252) is "COMPLETED" or "DISCONTINUED" has been sent.

If Sequences are included in a N-SET command, all Items of a Sequence are to be included in the command and not only the Items to be updated.

Once the Modality Performed Procedure Step Status (0040,0252) has been set to "COMPLETED" or "DISCONTINUED" the SCU shall no longer modify the Modality Performed Procedure Step SOP Instance, and shall not create new Composite SOP Instances as part of the same Modality Performed Procedure Step SOP Instance.

### Note

A Modality that wishes to continue or resume creating Composite SOP Instances may create a new Modality Performed Procedure Step.

Before or when Modality Performed Procedure Step Status (0040,0252) is set to "COMPLETED" or "DISCONTINUED" the SCU shall have created or set all the Attributes according to the requirements in the Final State column of Table F.7.2-1.

Before or when Modality Performed Procedure Step Status (0040,0252) is set to "COMPLETED" or "DISCONTINUED" the SCU shall have sent to the SCP a list of all Image SOP Instances and all Non-Image Composite SOP Instances created during the Procedure Step in Referenced Image Sequence (0008,1140) and Referenced Non-Image Composite SOP Instance Sequence (0040,0220) respectively.

### Note

1. The intent is that a completed or discontinued Modality Performed Procedure Step entity will contain a complete list of all the Images and Non-Image Composite SOP Instances that were created.

2. The distinction between the list of images and non-images is present for historic reasons only, and has no semantic significance.

The Modality Performed Procedure Step Status (0040,0252) shall not be set to "COMPLETED" or "DISCONTINUED" if the list contains neither Image references nor Non-Image Composite SOP Instance references, unless no such Instances were created.

##### F.7.2.2.3 Service Class Provider

The N-SET operation allows the SCU to request that the SCP update selected Attribute values for a specific Modality Performed Procedure Step SOP Instance. This operation shall be invoked through the use of the DIMSE N-SET Service used in conjunction with the appropriate Modality Performed Procedure Step SOP Instance. The N-SET value for Specific Character Set (0008,0005) does not replace the previous value. The SCP shall appropriately modify its internal representation so that subsequent operations reflect the combination of the character sets in use by the Attributes in this N-SET and those used by Attributes that have not been modified.

### Note

The SCP may need to convert the text for instance to the Unicode character set. If the SCP is not able to perform a necessary conversion it may return the Invalid Attribute value error code (0106H).

The SCP shall return, via the N-SET response primitive, the N-SET Response Status Code applicable to the associated request. Contingent on the N-SET Response Status, the SCP shall update the Referenced Performed Procedure Step Attributes.

The SCP shall accept N-SET request primitives only if the value of the already existing Attribute "Performed Procedure Step Status" (0040,0252) is "IN PROGRESS". If the already existing Performed Procedure Step Status Attribute has another value, the SCP shall set the failure status code "Processing failure" (Code: 0110H) with a Specific Error Comment (see Section F.7.2.2.4).

The SCP may itself modify any Attributes of the Modality Performed Procedure Step SOP Instance only after the "Performed Procedure Step Status" (0040,0252) has been set to "COMPLETED" or "DISCONTINUED".

### Note

1. Such coercion of Attributes by the SCP may be necessary to correct, for example, patient identification information or incorrectly selected scheduling information. Such an operation is not permitted to the SCU by the requirements described in Table F.7.2-1, which might create a new Modality Performed Procedure Step SOP Instance to achieve the same objective.

2. Under exceptional circumstances, it may be necessary for the SCP to itself set the Performed Procedure Step Status (0040,0252) to COMPLETED or DISCONTINUED, for example if the Modality has failed. When the Modality recovers, subsequent N-SETs may fail.

##### F.7.2.2.4 Status Codes

There are no specific status codes. The specific Error Comment and Error ID that may be returned with a status code of Processsing Failure in a N-SET-RSP are defined in Table F.7.2-2. See PS3.7 for additional response status codes.

Table F.7.2-2. N-SET Status

Service Status | Further Meaning | Status Code | Error Comment (0000,0902) | Error ID (0000,0903)
--- | --- | --- | --- | ---
Failure | Processing Failure | 0110 | Performed Procedure Step Object may no longer be updated | A710

### F.7.3 Modality Performed Procedure Step SOP Class UID

The Modality Performed Procedure Step SOP Class shall be uniquely identified by the Modality Performed Procedure Step SOP Class UID that shall have the value "1.2.840.10008.3.1.2.3.3".

### F.7.4 Conformance Requirements

Implementations providing conformance to the Modality Performed Procedure Step SOP Class shall be conformant as described in the following sections and shall include within their Conformance Statement information as described below.

An implementation may conform to this SOP Class as an SCU or as an SCP. The Conformance Statement shall be in the format defined in PS3.2.

#### F.7.4.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for the operations that it invokes.

##### F.7.4.1.1 Operations

Any Attributes for which Attribute Values may be provided (using the N-CREATE Service) by the SCU shall be enumerated in the Conformance Statement.

Any Attributes for which Attribute Values may be provided (using the N-SET Service) by the SCU shall be enumerated in the Conformance Statement.

An implementation that conforms to this SOP Class as an SCU shall specify under which conditions during the performance of the real-world Performed Procedure Step it will create the SOP Class Instance and under which conditions it will set the status value to COMPLETED and DISCONTINUED.

An implementation that conforms to this SOP Class as an SCU shall specify what strategy it applies to group Storage SOP Class Instances referenced in a Performed Procedure Step.

### Note

For example, whether or not Radiation Dose SR instances are sent within the same Performed Procedure Step as the images to which it applies, or a different Performed Procedure Step. See the discussion of the MPPS in the DICOM real-world model in PS3.3.

#### F.7.4.2 SCP Conformance

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for the operations that it performs.

##### F.7.4.2.1 Operations

Any Attributes for which Attribute Values may be provided (using the N-CREATE Service) by the SCU shall be enumerated in the Conformance Statement.

Any Attributes for which Attribute Values may be updated (using the N-SET Service) by the SCU shall be enumerated in the Conformance Statement.

The Conformance Statement shall also provide information on the behavior of the SCP at the following occurrences:

- The creation of a new Instance of the Modality Performed Procedure Step SOP Class with the status "IN PROGRESS". The result of that process on the scheduling information and on the Attributes values of the Modality Worklist SOP Class shall be specified.

- The update of the Attribute "Performed Procedure Step Status", i.e., the change from the state "IN PROGRESS" to "DISCONTINUED" or to "COMPLETED".

- Which Attributes the SCP may coerce after the state has been set to "IN PROGRESS" or "DISCONTINUED" or to "COMPLETED".

- For how long the Modality Performed Procedure Step SOP Instance will persist on the SCP.

## F.8 Modality Performed Procedure Step Retrieve SOP Class

### F.8.1 DIMSE Service Group

The DIMSE Services shown in Table F.8.1-1 are applicable to the Modality Performed Procedure Step IOD under the Modality Performed Procedure Step Retrieve SOP Class.

Table F.8.1-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-GET | M/M

The DIMSE Services and Protocols are specified in PS3.7. If the Modality Performed Procedure Step Object is no longer available the Request Primitive will be answered with a Failure Status message "No Such Object Instance".

### F.8.2 Operations

The Application Entity that claims conformance to this SOP Class as an SCU shall be permitted to invoke the following operations and the Application Entity that claims conformance as an SCP shall be capable of providing the following operations.

#### F.8.2.1 Get Performed Procedure Step Information

This operation allows an SCU to get information about a specific real-world Performed Procedure Step that is represented as a Modality Performed Procedure Step Retrieve SOP Instance by a Modality Performed Procedure Step Retrieve SCP. The operation is performed on a Modality Performed Procedure Step IOD. This operation shall be invoked through the DIMSE N-GET Service used in conjunction with the appropriate Modality Performed Procedure Step Retrieve SOP Instance.

The same SOP Instance UID is shared by all three Modality Performed Procedure Step SOP Classes. This means that the SOP Instance created and set using the services of the Modality Performed Procedure Step SOP Class can be retrieved using its SOP Instance UID within the service of the Modality Performed Procedure Step Retrieve SOP Class. Changes in its state can be notified by using its SOP Instance UID within the service of the Modality Performed Procedure Step Notification SOP Class. The SOP Class UID specified in the DIMSE N-GET request primitive shall be the UID of the Modality Performed Procedure Step Retrieve SOP Class.

The Modality Performed Procedure Retrieve Step SOP Instance UID shall not be used to identify a SOP Instance of the Study Component Service Class.

### Note

An Application Entity may support the SCU role of the Modality Performed Procedure Step Retrieve SOP Class in order to obtain information about Performed Procedure Steps created by other Application Entities.

##### F.8.2.1.1 Modality Performed Procedure Step Retrieve IOD Subset Specifications

The Application Entity that claims conformance to this SOP Class as an SCU may choose to interpret the Attribute values maintained by the SCP that the SCU receives via the operation of this SOP Class. The Application Entity that claims conformance as an SCP to this Modality Performed Procedure Step Retrieve SOP Class shall support the subset of the Modality Performed Procedure Step Retrieve Attributes specified in Table F.8.2-1.

Table F.8.2-1. Modality Performed Procedure Step Retrieve SOP Class N-GET Attributes

Attribute Name | Tag | Requirement Type (SCU/SCP)
--- | --- | ---
Specific Character Set | (0008,0005) | 3/1C (Required if an extended or replacement character set is used)
Performed Procedure Step Relationship
Scheduled Step Attributes Sequence | (0040,0270) | 3/1
>Study Instance UID | (0020,000D) | -/1
>Referenced Study Sequence | (0008,1110) | -/2
>>Referenced SOP Class UID | (0008,1150) | -/1
>>Referenced SOP Instance UID | (0008,1155) | -/1
>Accession Number | (0008,0050) | -/2
>Issuer of Accession Number Sequence | (0008,0051) | -/3
>>Local Namespace Entity ID | (0040,0031) | -/3
>>Universal Entity ID | (0040,0032) | -/3
>>Universal Entity ID Type | (0040,0033) | -/3
>Placer Order Number/Imaging Service Request | (0040,2016) | -/3
>Order Placer Identifier Sequence | (0040,0026) | -/3
>>Local Namespace Entity ID | (0040,0031) | -/3
>>Universal Entity ID | (0040,0032) | -/3
>>Universal Entity ID Type | (0040,0033) | -/3
>Filler Order Number/Imaging Service Request | (0040,2017) | -/3
>Order Filler Identifier Sequence | (0040,0027) | -/3
>>Local Namespace Entity ID | (0040,0031) | -/3
>>Universal Entity ID | (0040,0032) | -/3
>>Universal Entity ID Type | (0040,0033) | -/3
>Requested Procedure Code Sequence | (0032,1064) | -/3
>>Code Value | (0008,0100) | -/1
>>Coding Scheme Designator | (0008,0102) | -/1
>>Code Meaning | (0008,0104) | -/1
>Requested Procedure Description | (0032,1060) | -/2
>Requested Procedure ID | (0040,1001) | -/2
>Scheduled Procedure Step ID | (0040,0009) | -/2
>Scheduled Procedure Step Description | (0040,0007) | -/2
>Scheduled Protocol Code Sequence | (0040,0008) | -/2
>>Code Value | (0008,0100) | -/1
>>Coding Scheme Designator | (0008,0102) | -/1
>>Coding Scheme Version | (0008,0103) | -/3
>>Code Meaning | (0008,0104) | -/3
>>All other Attributes of the Scheduled Protocol Code Sequence |  | -/3
Patient's Name | (0010,0010) | 3/2
Patient ID | (0010,0020) | 3/2
Issuer of Patient ID | (0010,0021) | 3/3
Issuer of Patient ID Qualifiers Sequence | (0010,0024) | 3/3
>Universal Entity ID | (0040,0032) | 3/3
>Universal Entity ID Type | (0040,0033) | 1C/1C Required if Universal Entity ID (0040,0032) is present.
>All other Attributes of the Issuer of Patient ID Qualifiers Sequence |  | 3/3
>Patient ID | (0010,0020) | 3/3
>Issuer of Patient ID | (0010,0021) | 3/3
>Issuer of Patient ID Qualifiers Sequence | (0010,0024) | 3/3
>>All other Attributes of the Issuer of Patient ID Qualifiers Sequence |  | 3/3
Patient's Birth Date | (0010,0032) | 3/2
Patient's Sex | (0010,0040) | 3/2
Referenced Patient Sequence | (0008,1120) | 3/2
>Referenced SOP Class UID | (0008,1150) | -/1
>Referenced Instance UID | (0008,1155) | -/1
Admission ID | (0038,0010) | 3/3
Issuer of Admission ID Sequence | (0038,0014) | 3/3
>Local Namespace Entity ID | (0040,0031) | -/3
>Universal Entity ID | (0040,0032) | -/3
>Universal Entity ID Type | (0040,0033) | -/3
Service Episode ID | (0038,0060) | 3/3
Issuer of Service Episode ID Sequence | (0038,0064) | 3/3
>Local Namespace Entity ID | (0040,0031) | -/3
>Universal Entity ID | (0040,0032) | -/3
>Universal Entity ID Type | (0040,0033) | -/3
Service Episode Description | (0038,0062) | 3/3
Performed Procedure Step Information
Performed Station AE Title | (0040,0241) | 3/1
Performed Station Name | (0040,0242) | 3/2
Performed Location | (0040,0243) | 3/2
Performed Procedure Step Start Date | (0040,0244) | 3/1
Performed Procedure Step Start Time | (0040,0245) | 3/1
Performed Procedure Step ID | (0040,0253) | 3/1
Performed Procedure Step Status | (0040,0252) | 3/1
Performed Procedure Step End Date | (0040,0250) | 3/2
Performed Procedure Step End Time | (0040,0251) | 3/2
Performed Procedure Step Description | (0040,0254) | 3/2
Performed Procedure Type Description | (0040,0255) | 3/2
Procedure Code Sequence | (0008,1032) | 3/2
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/3
>Code Meaning | (0008,0104) | -/3
Comments on the Performed Procedure Step | (0040,0280) | 3/3
Performed Procedure Step Discontinuation Reason Code Sequence | (0040,0281) | 3/2
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/3
>Code Meaning | (0008,0104) | -/3
Image Acquisition Results
Performed Series Sequence | (0040,0340) | 3/2
>Performing Physician's Name | (0008,1050) | -/2
>Protocol Name | (0018,1030) | -/1
>Operators' Name | (0008,1070) | -/2
>Series Instance UID | (0020,000E) | -/1
>Series Description | (0008,103E) | -/2
>Retrieve AE Title | (0008,0054) | -/2
>Referenced Image Sequence | (0008,1140) | -/2
>>Referenced SOP Class UID | (0008,1150) | -/1
>>Referenced SOP Instance UID | (0008,1155) | -/1
>Referenced Non-Image Composite SOP Instance Sequence | (0040,0220) | -/2
>>Referenced SOP Class UID | (0008,1150) | -/1
>>Referenced SOP Instance UID | (0008,1155) | -/1
>All other Attributes of the Performed Series Sequence |  | -/3
Modality | (0008,0060) | 3/1
Study ID | (0020,0010) | 3/2
Performed Protocol Code Sequence | (0040,0260) | 3/2
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/3
>Code Meaning | (0008,0104) | -/3
>All other Attributes of the Performed Protocol Code Sequence |  | -/3
All other Attributes of the Billing and Material Management Code Module |  | 3/3

### Note

1. Attributes (0040,1006) Placer Order Number/Procedure and (0040,1007) Filler Order Number/Procedure were previously defined in DICOM. They are now retired (see PS3.3-1998).

2. Attributes (0040,2006) and (0040,2007) were previously defined in DICOM. They are now retired (see PS3.3-1998).

3. The Radiation Dose Module was previously defined in DICOM. This is now retired (see PS3.3-2017c).

##### F.8.2.1.2 Service Class User

The SCU uses the N-GET Service Element to request the SCP to get a Modality Performed Procedure Step Retrieve SOP Instance. The SCU shall specify in the N-GET request primitive the UID of the SOP Instance to be retrieved, which is a UID of a Modality Performed Procedure Step SOP Instance. The SCU shall be permitted to request that Attribute Values be returned for any Modality Performed Procedure Step Retrieve SOP Class Attribute specified in Table F.8.2-1. Additionally values may be requested for optional Modality Performed Procedure Step IOD Attributes.

The SCU shall specify the list of Modality Performed Procedure Step Retrieve SOP Class Attributes for which values are to be returned. The encoding rules for Modality Performed Procedure Step Attributes are specified in the N-GET request primitive specification in PS3.7.

In an N-GET operation, the values of Attributes that are defined within a Sequence of Items shall not be requested by an SCU.

The SCU shall be capable of receiving all requested Attribute Values provided by the SCP in response to the N-GET indication primitive. The SCU may request Attribute Values for optional Attributes that are not maintained by the SCP. In such a case, the SCU shall function properly regardless of whether the SCP returns values for those Attributes or not. This Service Class Specification places no requirements on what the SCU shall do as a result of receiving this information.

### Note

In order to accurately interpret the character set used for the Attribute Values returned, it is recommended that the Attribute Value for the Specific Character Set (0008,0005) be requested in the N-GET request primitive.

##### F.8.2.1.3 Service Class Provider

The N-GET operation allows the SCU to request from the SCP selected Attribute values for a specific Modality Performed Procedure Step SOP Instance via a Modality Performed Procedure Step Retrieve SOP Instance. This operation shall be invoked through the use of the DIMSE N-GET Service used in conjunction with the appropriate Modality Performed Procedure Step Retrieve SOP Instance that equals the Modality Performed Procedure SOP Instance. The SCP shall retrieve the selected Attribute values from the indicated Modality Performed Procedure Step SOP Instance.

The SCP shall return, via the N-GET response primitive, the N-GET Response Status Code applicable to the associated request. A Failure Code shall indicate that the SCP has not retrieved the SOP Instance. Contingent on the N-GET Response Status, the SCP shall return, via the N-GET response primitive, Attribute Values for all requested Attributes maintained by the SCP.

##### F.8.2.1.4 Status Codes

Table F.8.2-2 defines the specific status code values that might be returned in a N-GET response. See PS3.7 for additional response status codes.

Table F.8.2-2. Response Status

Service Status | Further Meaning | Status Code
--- | --- | ---
Warning | Requested optional Attributes are not supported | 0001

### F.8.3 Modality Performed Procedure Step Retrieve SOP Class UID

The Modality Performed Procedure Step Retrieve SOP Class shall be uniquely identified by the Modality Performed Procedure Step Retrieve SOP Class UID that shall have the value "1.2.840.10008.3.1.2.3.4".

### F.8.4 Conformance Requirements

Implementations providing conformance to the Modality Performed Procedure Step Retrieve SOP Class shall be conformant as described in the following sections and shall include within their Conformance Statement information as described below.

An implementation may conform to this SOP Class as an SCU or as an SCP. The Conformance Statement shall be in the format defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

#### F.8.4.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for the operations that it invokes.

##### F.8.4.1.1 Operations

Any Attributes for which Attribute Values may be requested (using the N-GET Service) by the SCU shall be enumerated in the SCU Operations Statement. The SCU Operations Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

#### F.8.4.2 SCP Conformance

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for the operations that it performs.

##### F.8.4.2.1 Operations

Any Attributes for which Attribute Values may be requested (using the N-GET Service) by the SCU shall be enumerated in the SCP Operations Statement. The SCP Operations Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

## F.9 Modality Performed Procedure Step Notification SOP Class

The Modality Performed Procedure Step Notification SOP Class is intended for those Application Entities requiring notifications of Modality Performed Procedure Step's changes in state.

An Application Entity may choose to take some actions based upon a notification or request for information but is in no way required to do so.

### Note

1. For example, in one configuration, an IS could be responsible for maintaining data related to performed procedure steps. A PACS reviewing workstation may need to display the images for any study viewed. In order for the PACS to link the images to the study, a PACS may receive a notification whenever a procedure step has been performed. In such a configuration the IS is the SCP and the PACS is the SCU. When the PACS receives this notification, it may link the images and the performed procedure step to the study within its internal database or may choose to take no action.

2. The terms IS and PACS used in the previous example are provided for clarification purposes only. This document does not define nor constrain the purpose or role of any IS, PACS or acquisition Application Entity conforming to this Service Class Specification.

### F.9.1 DIMSE Service Group

Table F.9.1-1 shows the DIMSE-N Services applicable to the Modality Performed Procedure Step IOD under the Modality Performed Procedure Step Notification SOP Class.

The DIMSE-N Services and Protocol are specified in PS3.7.

Table F.9.1-1. DIMSE-N Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-EVENT-REPORT | M/M

### F.9.2 Notifications

The Application Entity that claims conformance as an SCU to this SOP Class shall be permitted to receive the following notification. The Application Entity that claims conformance as an SCP to this SOP Class shall be capable of providing the notifications defined in Table F.9.2-1.

Table F.9.2-1. Performed Procedure Step Notification Event Information

Event Type Name | Event Type ID | Attribute Name | Tag | Req. Type SCU/SCP
--- | --- | --- | --- | ---
Performed Procedure Step In Progress | 1 |  |  |
Performed Procedure Step Completed | 2 |  |  |
Performed Procedure Step Discontinued | 3 |  |  |
Performed Procedure Step Updated | 4 |  |  | An Update event shall not be used to notify changes in Performed Procedure Step Status (0040,0252).
Performed Procedure Step Deleted | 5 |  |  |

### Note

The Notification Event Information contains no Attributes, beyond those defined in PS3.7. An SCU receiving a Notification and requiring further information may also be an SCU of the Modality Performed Procedure Step Retrieval SOP Class and may use the Affected SOP Instance UID (0000,1000) to perform an N-GET of the Modality Performed Procedure Step SOP Instance.

#### F.9.2.1 Receive Modality Performed Procedure Step Event Notification

This notification allows an SCU to receive from the SCP an unsolicited notification of a change in a Modality Performed Procedure Step SOP Instance. These notifications shall be invoked by the SCP through the use of the DIMSE N-EVENT-REPORT Service used in conjunction with the related Modality Performed Procedure Step SOP Instance.

The SCU shall return, via the N-EVENT-REPORT response primitive, the N-EVENT-REPORT Response Status Code applicable to the associated request. The SCU shall accept all Attributes included in any notification. This Service Class Specification places no requirements on what the SCU shall do as a result of receiving this information.

The same SOP Instance UID is shared by all three Modality Performed Procedure Step SOP Classes. This means that the SOP Instance created and set using the services of the Modality Performed Procedure Step SOP Class can be retrieved using its SOP Instance UID within the service of the Modality Performed Procedure Step Retrieve SOP Class. Changes in its state can be notified by using its SOP Instance UID within the request primitive of the Modality Performed Procedure Step Notification SOP Class.

The Modality Performed Procedure Step Notification SOP Instance UID shall not be used to identify a SOP Instance of the Study Component Service Class.

#### F.9.2.2 Provide Modality Performed Procedure Step Event Notification

These notifications allow an SCU to receive from the SCP an unsolicited notification of a change in the state of a real-world performed procedure step. This notification shall be invoked by the SCP through the use of the DIMSE N-EVENT-REPORT Service used in conjunction with the related Modality Performed Procedure Step SOP Instance.

The SCP shall specify in the N-EVENT-REPORT request primitive the UID of the Modality Performed Procedure Step SOP Instance with which the event is associated and the Event Type ID. The Affected SOP Class UID specified in the DIMSE N-EVENT-REPORT request primitive shall be the UID of the Modality Performed Procedure Step Notification SOP Class.

### Note

The encoding of Notification Event Information is defined in PS3.7.

#### F.9.2.3 Status Codes

There are no specific status codes. See PS3.7 for response status codes.

### F.9.3 Modality Performed Procedure Step Notification SOP Class UID

The Modality Performed Procedure Step Notification SOP Class shall be uniquely identified by the Modality Performed Procedure Step Notification SOP Class UID that shall have the value "1.2.840.10008.3.1.2.3.5".

### F.9.4 Conformance Requirements

Implementations providing Standard SOP Class Conformance to the Modality Performed Procedure Step Notification SOP Class shall be conformant as described in the following sections and shall include within their Conformance Statement information as described in the following sections.

An implementation may conform to this SOP Class as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

#### F.9.4.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for the:

- notifications that it receives

##### F.9.4.1.1 Notifications

All standard event types for which notifications may be requested by the SCU shall be enumerated in the SCU Notifications Statement. The SCU Notifications Statement shall include an enumerated list of the event types supported:

- Performed Procedure Step In Progress

- Performed Procedure Step Completed

- Performed Procedure Step Discontinued

- Performed Procedure Step Updated

- Performed Procedure Step Deleted

#### F.9.4.2 SCP Conformance

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for:

- notifications that it invokes

##### F.9.4.2.1 Notifications

Any optional Attributes that may be included in Standard notifications to the SCU shall be enumerated in the SCP Notifications Statement. The SCP Notifications Statement shall be formatted as defined in PS3.2. Following this statement shall be the list of event types and optional Attributes.

## F.10 General Purpose Scheduled Procedure Step SOP Class (Retired)

Retired. See PS3.4-2011.

## F.11 General Purpose Performed Procedure Step SOP Class(Retired)

Retired. See PS3.4-2011.

# G Results Management Service Class (Normative)

Retired. See PS3.4-2004.

# H Print Management Service Class (Normative)

## H.1 Scope

The Print Management Service Class defines an application-level class-of-service that facilitates the printing of images and image related data on a hard copy medium.

### Note

The DICOM Print Management Service Class covers the general cases of printing medical images in standardized layouts. An application can obtain more flexible layout, annotation, and formatting either by direct manipulation of the pixel matrices used in DICOM Print Management, or by utilizing page descriptions written in a page description language (such as Postscript or PDF) that are communicated to the printing system using commonly available protocols. These other page descriptions languages are not communicated using DICOM protocols and their use is outside the scope of the DICOM Standard.

## H.2 Print Management Model

### H.2.1 Print Management Data Flow Model

#### H.2.1.1 Global Data Flow Model

The Print Management Data Flow Model (Figure H.2-1) consists of three main processes:

- Film Session Management process

- Print process

### Note

The Standard uses the word film as a general name for different types of hard copy media (e.g., photographic film, paper).

Figure H.2-1. Print Management Data Flow Model

The Film Session Management process is responsible for acquiring all the information that is required to print the film session. The film session is the atomic work package of the Print Management Application and contains one or more films related in a user defined way (e.g., belonging to the same exam, patient) that are originated from one host (e.g., workstation, diagnostic modality) and that are printed on one hard copy printer.

Each film consists of one or more images and zero or more film related annotations. An annotation consists of one or more lines of text.

Each image consists of pixel data and zero or more overlay planes. The user controls the look of the film by assigning values to print parameters.

Print parameters are defined at film session, film, image and annotation levels. The parameter level determines the scope of operation of the print parameters (e.g., print parameters of the image level are valid for the corresponding image).

The inputs of the Film Session Management process are:

- set of images and image related data

- presentation data that describes the visual look of the films

The output of the Film Session Management process is the Print Job, which contains all the information to print the film session.

The Print process prints a set of films, based on the information in the Print Job. The Print process is implementation specific and its management is beyond the scope of the DICOM standard.

#### H.2.1.2 Grayscale Transformations

The Print Management Service Class supports two grayscale transformations and spatial transformations that converts an original image into a printed image.

The sequence of spatial transformations (e.g., magnification and merging of annotation with images) and their relationships with the grayscale transformations are implementation specific and fall beyond the scope of the DICOM Standard.

The sequence of grayscale transformations is important for achieving consistent image quality because of the non-orthogonal nature of the different transformations. Figure H.2-2 describes the sequence of grayscale transformations.

### Note

This section previously described Modality LUT and VOI LUT transformations in more detail. Since Referenced Print SOP Classes have been retired, these descriptions no longer apply to the Print Management Service Class. See PS 3.4-1998.

Figure H.2-2. Print Management Data Flow Model

##### H.2.1.2.1 Modality and User Specific Transformations

Examples of these transformations are Modality LUT, Mask Subtraction, and VOI LUT.

The Modality LUT transforms manufacturer dependent pixel values into pixel values that are meaningful for the modality and are manufacturer independent.

The VOI LUT transforms the modality pixel values into pixel values that are meaningful for the user or the application. For example it selects of a range of pixel values to be optimized for display, such as soft tissue or bone windows in a CT image.

##### H.2.1.2.2 Polarity

Polarity specifies whether minimum input pixel values shall be displayed as black or white. If Polarity (2020,0020) is NORMAL then the pixels will be displayed as specified by Photometric Interpretation; if Polarity is REVERSE then the pixels will be displayed with the opposite polarity as specified by Photometric Interpretation.

Polarity (2020,0020) is an Attribute of the Image Box IOD.

##### H.2.1.2.3 Presentation LUT

The Presentation LUT transforms the polarity pixel values into Presentation Values (P-Values), which are meaningful for display of the images. P-Values are approximately related to human perceptual response. They are intended to facilitate consistent display with common input for both hardcopy and softcopy display devices and be independent of the specific class or characteristics of the display device. It is used to realize image display tailored for specific modalities, applications, and user preferences

In the Print Management Service Class, the Presentation LUT is part of the Presentation LUT IOD.

Hardcopy devices convert P-Values into optical density for printing. This conversion depends on desired image D-max and D-min. It also depends on expected viewing conditions such as lightbox intensity for transparency films. The conversion to printed density is specified in the Presentation LUT SOP Class.

If the modality desires to natively specify P-Values as its output, it can negotiate for support of the Presentation LUT, but specify a LUT that is an identity function. The identity function informs the display device that no further translation is necessary.

### Note

Performing this translation in the printer prevents potential loss of precision (detail) that would occur if this translation were to be performed on many of the existing 8-bit modalities.

### H.2.2 Print Management Service Class Structure

The Print Management Service Class Structure is shown in Figure H.2-3.

The Print Management SCU and Print Management SCP are peer DICOM Print Management Application Entities. The Application Entity of the Print Management SCP corresponds with one or more hard copy printers. If the SCP Application Entity corresponds with multiple printers then the SCP Application Entity selects for each Print Job the printer where the Print Job will be printed.

Figure H.2-3. Print Management Service Class Structure

The Print Management SCU and Print Management SCP establish an Association by using the Association Services of the OSI Upper Layer Service. During Association establishment, the DICOM Print Management Application Entities negotiate the supported SOP Classes. The negotiation procedure is defined in Section H.5.

Figure H.2-4 shows alternative configurations for printing images and image related data from one host to multiple printers.

- Configuration 1: one SCU Application Entity corresponds with the host and one SCP Application Entity corresponds with multiple printers. The SCU has no control over the print parameters of each printer and over the print destination of the Print Job.

- Configuration 2: one SCU Application Entity corresponds with the host and one Application Entity SCP corresponds with each printer. The SCU has explicit control over the print parameters of each printer and over the print destination of the Print Job. Each SCP Application Entity has one Association with the SCU Application Entity and is identified by its Application Entity title.

Figure H.2-4. Configurations for Printing On Multiple Printers

### H.2.3 Print Management SOP Classes

The Print Management SCU controls the Print Process by manipulating the Print Management SOP Classes by means of the DIMSE Services. The Print Management SOP Classes are managed by the Print Management SCP.

The Print Management SOP Classes are classified as follows:

- Content related SOP Classes: these SOP Classes are an abstraction of the contents of a film (e.g., pixel data, text string). The content related SOP Classes correspond with the Image related SOP Classes, which are described in Section H.4 of this Part.

- Presentation related SOP Classes: these SOP Classes are an abstraction of the presentation of a film (e.g., layout information) and are defined by Normalized IODs and Normalized DIMSE-N Services. The presentation related SOP Classes are defined in Section H.4 of this Part.

- Printer related SOP Classes: these SOP Classes are an abstraction of the printer configuration and status and are defined by Normalized IODs. The Printer SOP Class is defined in Section H.4 of this Part.

### H.2.4 Usage Specifications

The building blocks of SOP Classes are Modules and DIMSE Services. The Modules contain related Attributes, which are Mandatory(M) or Optional (U). The usage may be different for the SCU and SCP. The usage is specified as a pair of letters: the former indicating the SCU usage, the latter indicating the SCP usage.

DIMSE Services may be Mandatory (M) or Optional (U) as specified in Section 5.4 of this Part.

The meaning and behavior of the usage specification for Attributes for the Print Management Service Class are:

M/M

  The SCU shall provide a value for the Attribute. If the SCU does not supply a value, the SCP shall return a Failure status ("Missing Attribute," code 0120H). The SCP shall support at least one value of the Attribute. If the SCP does not support the value specified by the SCU, it shall return a Failure status ("Invalid Attribute Value," code 0106H).

-/M

  The SCU's usage of the Attribute is undefined. The SCP shall support at least one value of the Attribute.

U/M

  The SCU may provide a value for the Attribute. If the SCP does not support the value specified by the SCU, it shall return either a Failure status ("Invalid Attribute Value", code 0106H) or return a Warning status ("Attribute Value Out of Range", code 0116H). In the case of Warning status, the SCP will apply the default value as defined in the SCP Conformance Statement.

U/U

  The SCU may provide a value for the Attribute. If the SCP does not support the value specified by the SCU, but does support the Attribute, it shall return either a Failure status ("Invalid Attribute Value", code 0106H) or a Warning status ("Attribute Value out of Range", code 0116H.). In the case of Warning status, the SCP will apply the default value as defined in the SCP Conformance Statement.

If the SCP does not support the Attribute specified by the SCU, it shall return either a Failure status ("No Such Attribute", code 0105H) or return a Warning status ("Attribute List Error", code 0107H.)). In the case of Warning status, the behavior of the SCP is defined in the SCP Conformance Statement.

If the usage type designation is modified by a "C" (e.g., MC/M) the specification stated above shall be modified to include the requirement that the Attribute shall be supported if the specified condition is met.

### H.2.5 Status Code Categories

For every operation requested on a SOP class of the print management service class, a status code will be returned. These status codes are grouped into success, warning or failure categories.

### Note

These status codes categories are defined in PS3.7:

- Success - indicates that the SCP performed the requested operation as requested.

- Warning - indicates that the SCP has received the request and will process it. However, immediate processing of the request, or processing in the way specified by the SCU, may not be possible. The SCP expects to be able to complete the request without further action by the SCU across the DICOM interface. The exact behavior of the SCP is described in the Conformance Statement.

- Failure - indicates that the SCP is unable to perform the request. The request will not be processed unless it is repeated by the SCU at a later time. The exact behavior of the SCP is described in the Conformance Statement.

## H.3 Print Management Conformance

### H.3.1 Scope

Print Management conformance is defined in terms of supported Meta SOP Classes, which correspond with the mandatory functionality, and of supported optional SOP Classes, which correspond with additional functionality.

A Meta SOP Class corresponds with a pre-defined group of SOP Classes. The following Print Management Meta SOP Classes are defined:

- Basic Grayscale Print Management Meta SOP Class

- Basic Color Print Management Meta SOP Class

All SCUs and SCPs of the Print Management Service Class shall support at least one of the Basic Print Management Meta SOP Classes.

In addition the other Meta SOP Classes or optional SOP Classes may be supported.

The Meta SOP Class level negotiation is used to define a minimum set of print functions; the SOP Class level negotiation is used to define additional functions.

If multiple Meta SOP Classes and one or more optional SOP Classes are negotiated, the SCP shall support all the optional SOP Classes in conjunction with all the Meta SOP Classes.

At association setup, the negotiation process between the Print Management SCU and SCP shall occur for

- one or more of the Meta SOP Classes and zero or more of the optional SOP Classes specified in Section H.3.3.2; or

- one or more of the Printer, Print Job, and Printer Configuration Retrieval SOP Classes.

### Note

It is possible for an SCP to support Associations for printing and to also support additional Associations for the sole purpose of exchanging status information about the printer.

### H.3.2 Print Management Meta SOP Classes

#### H.3.2.1 Description

The Basic Print Management Meta SOP Classes correspond with the minimum functionality that an implementation of the Print Management Service Class shall support. The Basic Print Management Meta SOP Classes support the following mandatory features:

- preformatted grayscale images or preformatted color images; preformatted images are images where annotation, graphics, overlays are burned in

- pre-defined film layouts (image display formats)

- basic presentation parameters on film session, film box and image box level

- basic device management

The optional SOP Classes described in Section H.3.3 may be used with the Basic Print Management Meta SOP Classes.

The following features are optional for SCUs and SCPs:

- Film box annotation

- Presentation LUT

#### H.3.2.2 Meta SOP Class Definitions

##### H.3.2.2.1 Basic Grayscale Print Management Meta SOP Class

The Meta SOP Class is defined by the following set of supported SOP Classes.

Table H.3.2.2.1-1. SOP Classes of Basic Grayscale Print Management Meta SOP Class

SOP Class Name | Reference | Usage SCU/SCP
--- | --- | ---
Basic Film Session SOP Class | H.4.1 | M/M
Basic Film Box SOP Class | H.4.2 | M/M
Basic Grayscale Image Box SOP Class | H.4.3.1 | M/M
Printer SOP Class | H.4.6 | M/M

### Note

The image pixel data are part of the Basic Grayscale Image Box SOP Class

The meaning of the Usage SCU/SCP is described in Section H.2.4.

The Basic Grayscale Print Management Meta SOP Class UID has the value "1.2.840.10008.5.1.1.9".

##### H.3.2.2.2 Basic Color Print Management Meta SOP Class

The Meta SOP Class is defined by the following set of supported SOP Classes.

Table H.3.2.2.2-1. SOP Classes of Basic Color Print Management Meta SOP Class

SOP Class Name | Reference | Usage SCU/SCP
--- | --- | ---
Basic Film Session SOP Class | H.4.1 | M/M
Basic Film Box SOP Class | H.4.2 | M/M
Basic Color Image Box SOP Class | H.4.3.2 | M/M
Printer SOP Class | H.4.6 | M/M

### Note

The image pixel data are part of the Basic Color Image Box SOP Class

The meaning of the Usage SCU/SCP is described in Section H.2.4.

The Basic Color Print Management Meta SOP Class UID has the value "1.2.840.10008.5.1.1.18".

##### H.3.2.2.3 Referenced Grayscale Print Management Meta SOP Class (Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

##### H.3.2.2.4 Referenced Color Print Management Meta SOP Class (Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

##### H.3.2.2.5 Pull Stored Print Management Meta SOP Class(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-2004.

### H.3.3 Optional SOP Classes

#### H.3.3.1 Description

The optional SOP Classes address functionality beyond that of the Print Management Meta SOP Classes. One or more optional SOP Classes may be used in addition to the Print Management Meta SOP Classes.

The following functionality is supported by the optional SOP Classes:

- annotation (text associated with a sheet of film)

- tracking the printing of the print session

- retrieval of printer configuration information

- Presentation LUTs

Use of these optional SOP Classes allows an SCU to provide information to be printed with or on an image without burning the information into the image pixels. If these optional SOP Classes are not supported by both the SCU and SCP, then only the information burnt in to the image pixels before they are sent to the SCP will be printed. If the optional SOP Classes are not supported, the SCU is responsible for burning all expected text or graphics into the image pixels.

#### H.3.3.2 List of Optional SOP Classes

The following optional SOP Classes may be used in conjunction with the Basic Print Management Meta SOP Classes specified in Section H.3.2.2.

Table H.3.3.2-1. List of Optional SOP Classes for Basic Print Management Meta SOP Classes

SOP Class Name | Reference | Usage SCU/SCP
--- | --- | ---
Basic Annotation Box SOP Class | H.4.4 | U/U
Print Job SOP Class | H.4.5 | U/U
Presentation LUT SOP Class | H.4.9 | U/U
Printer Configuration Retrieval SOP Class | H.4.11 | U/U

### Note

Negotiation of the Presentation LUT SOP Class does not imply any behavior in the SCP. Behavior is explicit when the Presentation LUT SOP Class is created and referenced at either the Film Session, Film Box, or Image Box levels.

### H.3.4 Conformance Statement

The implementation Conformance Statement of these SOP Classes shall follow PS3.2.

The SCU Conformance Statement shall specify the following items:

- maximum number of supported Associations at the same time

- list of supported SOP Classes and Meta SOP Classes

- for each of the supported SOP and Meta SOP Classes:

- list of supported optional SOP Class Attributes and DIMSE Service Elements

- for each supported Attribute (mandatory and optional Attribute), the valid range of values

The SCP Conformance Statement shall specify the following items:

- maximum number of supported Associations at the same time

- list of supported SOP Classes and Meta SOP Classes

- minimum and maximum number of printable pixel matrix per supported film size

- for each of the supported SOP Classes:

- list of supported optional SOP Class Attributes and DIMSE Service Elements

- for each supported Attribute (mandatory and optional Attribute):

- valid range of values

- default value if no value is supplied by the SCU

- status code (Failure or Warning) if SCU supplies a value that is out of range

- for each supported DIMSE Service, the SCP behavior for all specific status codes

- description of each supported custom Image Display Format (2010,0010) e.g., position and dimensions of each composing image box, numbering scheme of the image positions

- description of each supported Annotation Display Format ID (2010,0030) e.g., position and dimensions of annotation box, font, number of characters

- description of each supported configuration table (e.g., identification, content)

- if the SCP supports N-ACTION for the Film Session SOP Class then the SCP shall specify the maximum number of collated films

- in the case of grayscale printers that print color images, the behavior of printing color images

- if cropping of images is supported, the algorithm for removing rows and columns from the image

## H.4 Print Management SOP Class Definitions

### H.4.1 Basic Film Session SOP Class

#### H.4.1.1 IOD Description

The Basic Film Session IOD describes the presentation parameters that are common for all the films of a film session (e.g., number of films, film destination)

The Basic Film Session SOP Instance refers to one or more Basic Film Box SOP Instances.

#### H.4.1.2 DIMSE Service Group

The DIMSE Services applicable to the IOD are shown in Table H.4-1.

Table H.4-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-SET | U/M
N-DELETE | U/M
N-ACTION | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.1.2.1 N-CREATE

The N-CREATE is used to create an instance of the Basic Film Session SOP Class.

###### H.4.1.2.1.1 Attributes

The Attribute list of the N-CREATE is defined as shown in Table H.4-2.

Table H.4-2. N-CREATE Attribute List

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Specific Character Set | (0008,0005) | U/U
Number of Copies | (2000,0010) | U/M
Print Priority | (2000,0020) | U/M
Medium Type | (2000,0030) | U/M
Film Destination | (2000,0040) | U/M
Film Session Label | (2000,0050) | U/U
Memory Allocation | (2000,0060) | U/U
Owner ID | (2100,0160) | U/U

### Note

1. The memory allocation Attribute allows the SCU to reserve sufficient memory to store the "working" film session hierarchy as well the "copied" film session hierarchy in the Print Job in order to prevent deadlock situations.

2. Owner ID (2100,0160) is a user option for the Basic Film Session.

The meaning of the Usage SCU/SCP is described in Section H.2.4.

Within the film session, the allocated memory is consumed as SOP Instances are created and is freed for reuse as SOP Instances are deleted. All the allocated memory shall be released following termination of the Association or deletion of the Film Session SOP Instance.

###### H.4.1.2.1.2 Status

Table H.4.1.2.1.2-1 defines the specific status code values that may be returned in a N-CREATE or N-SET response for this SOP Class. See PS3.7 for additional response status codes of N-CREATE and N-SET DIMSE Services.

Table H.4.1.2.1.2-1. Status Values for Basic Film Session SOP Class

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Film session successfully created | 0000
Warning | Memory allocation not supported | B600

### Note

The status code "0106H" (Invalid Attribute Value) indicates that the requested memory allocation can not be provided; the status code "0213H" (Resource limitation) indicates that the requested allocation can temporarily not be provided.

###### H.4.1.2.1.3 Behavior

The SCU uses the N-CREATE to request the SCP to create a Basic Film Session SOP Instance. The SCU shall initialize Attributes of the SOP Class as specified in Section H.2.4.

The SCP shall create the SOP Instance and shall initialize Attributes of the SOP Class as specified in Section H.2.4.

The SCP shall return the status code of the requested SOP Instance creation. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

The Basic Film Session SOP Instances shall be created before the Film Box SOP Instances are created.

At any time the SCU/SCP shall only support one Basic Film Session SOP Instance on an Association.

### Note

Multiple film sessions may be handled by establishing multiple Associations.

Terminating the Association will effectively perform an N-DELETE on an opened film session. See Note in Section H.4.1.2.3.2.

##### H.4.1.2.2 N-SET

The N-SET may be used to update an instance of the Basic Film Session SOP Class.

###### H.4.1.2.2.1 Attributes

All Attributes and usage in Table H.4-2 apply to N-SET.

###### H.4.1.2.2.2 Status

The status values that are specific for this SOP Class are defined in Section H.4.1.2.1.2.

###### H.4.1.2.2.3 Behavior

The SCU uses the N-SET to request the SCP to update a Basic Film Session SOP Instance. The SCU shall specify the SOP Instance UID to be updated and shall specify the list of Attributes for which the Attribute Values are to be set.

The SCP shall set new values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance update. The meaning of success, warning, and failure status codes is defined in Section H.2.5

##### H.4.1.2.3 N-DELETE

The N-DELETE is used to delete the complete Basic Film Session SOP Instance hierarchy. As a result, all references to Image SOP Instances within the film session are deleted.

The Basic Film Session SOP Instance hierarchy consists of one Basic Film Session SOP Instance, one or more Basic Film Box SOP Instances, one or more Image Box SOP Instances, zero or more Basic Annotation Box SOP Instances, zero or more Presentation LUT SOP Instances, and zero or more Basic Print Image Overlay Box SOP instances.

### Note

The Basic Film Session SOP Instance hierarchy can be visualized as a reversed tree with the Basic Film Session SOP Instance as the root and the Image Box SOP Instances as the leaves.

###### H.4.1.2.3.1 Status

There are no specific status codes. See PS3.7 for response status codes.

###### H.4.1.2.3.2 Behavior

The SCU uses the N-DELETE to request the SCP to delete the Basic Film Session SOP Instance hierarchy. The SCU shall specify in the N-DELETE request primitive of the SOP Instance UID of the Basic Film Session (root).

The SCP shall delete the specified SOP Instance hierarchy.

The SCP shall not delete SOP Instances in the hierarchy as long as there are outstanding references to these SOP Instances

### Note

It is beyond the scope of the Standard to specify when the SCP actually deletes SOP Instances with outstanding references.

The SCP shall return the status code of the requested SOP Instance deletion. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

##### H.4.1.2.4 N-ACTION

The N-ACTION is used to print the film session; i.e., to print all the films that belong to the film session.

If multiple copies of the film session have been requested, the SCP shall collate the copies. This means that if two copies of four films has been specified, the printed sequence is 12341234.

###### H.4.1.2.4.1 Attributes

The arguments of the N-ACTION are defined in Table H.4-3.

The Action Reply argument is encoded as a DICOM Data Set. The Data Set only contains the Attribute Referenced Print Job Sequence (2100,0500), which includes the Referenced SOP Class UID (0008,1150) and the Referenced SOP Instance UID (0008,1155).

If the SCP supports the Print Job SOP Class, the Action Reply argument is contained in the N-ACTION response. Otherwise, the Action Reply is not contained in the N-ACTION response.

Table H.4-3. N-ACTION Arguments

Action Type Name | Action Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Print | 1 | Referenced Print Job Sequence | (2100,0500) | -/MC Required if Print Job SOP is supported
|  | >Referenced SOP Class UID | (0008,1150) | -/MC Required if Referenced Print Job Sequence (2100,0500) is present
|  | >Referenced SOP Instance UID | (0008,1155) | -/MC Required if Referenced Print Job Sequence (2100,0500) is present

###### H.4.1.2.4.2 Status

Table H.4-4defines the specific status code values that may be returned in a N-ACTION response. See PS3.7 for additional response status codes.

Table H.4-4. SOP Class Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Film belonging to the film session are accepted for printing; if supported, the Print Job SOP Instance is created | 0000
Warning | Film session printing (collation) is not supported | B601
| Film Session SOP Instance hierarchy does not contain Image Box SOP Instances (empty page) | B602
| Image size is larger than image box size, the image has been demagnified. | B604
| Image size is larger than the Image Box size. The Image has been cropped to fit. | B609
| Image size or Combined Print Image size is larger than the Image Box size. Image or Combined Print Image has been decimated to fit. | B60A
Failure | Failed: Film Session SOP Instance hierarchy does not contain Film Box SOP Instances | C600
| Failed: Unable to create Print Job SOP Instance; print queue is full | C601
| Failed: Image size is larger than image box size | C603
| Failed: Combined Print Image size is larger than the Image Box size | C613

### Note

Previous versions of the DICOM Standard defined the status code of C604. This code was specified for the case of an image position collision. Since image position collision is not a possible state, the code has been retired.

###### H.4.1.2.4.3 Behavior

The SCU uses the N-ACTION to request the SCP to print all the films belonging to the identified film session.

The SCP shall make a copy of the "working" Basic Film Session SOP Instance hierarchy, which contains all the information to control the Print Process. Hence the SCU may further update the "working" SOP Instance hierarchy without affecting the result of previous print requests. The execution of the Print Process is monitored by the Print Job SOP Instance (if supported by the SCP) and the Printer SOP Class.

If the SCP supports the Print Job SOP Class then the SCP shall create a Print Job SOP Instance, which contains the copy of the "working" Basic Film Session SOP Instance hierarchy and shall return the Print Job SOP Class/Instance UID pair in the Attribute Referenced Print Job Sequence of the Action Reply argument.

### Note

If the SCP supports the Print Job SOP Class, it creates a single Print Job for all the films of the film session.

The SCP shall return the status code of the requested operation. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

The N-ACTION shall be issued only if the Basic Film Session SOP Instance hierarchy contains at least one Film Box SOP Instance.

#### H.4.1.3 SOP Class Definition and UID

The Basic Film Session SOP Class UID shall have the value "1.2.840.10008.5.1.1.1".

### H.4.2 Basic Film Box SOP Class

#### H.4.2.1 IOD Description

The Basic Film Box IOD is an abstraction of the presentation of one film of the film session. The Basic Film Box IOD describes the presentation parameters that are common for all images on a given sheet of film.

The Basic Film Box SOP Instance refers to one or more Image Box SOP Instances, zero or more film related Annotation Box SOP Instances, and zero or one Presentation LUT SOP Instance.

#### H.4.2.2 DIMSE Service Group

Table H.4-5 shows DIMSE Services applicable to the IOD.

Table H.4-5. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-ACTION | M/M
N-DELETE | U/M
N-SET | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.2.2.1 N-CREATE

The N-CREATE is used to create an instance of the Basic Film Box SOP Class.

###### H.4.2.2.1.1 Attributes

The Attribute list of the N-CREATE is shown in Table H.4-6.

Table H.4-6. N-CREATE Attribute List

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Image Display Format | (2010,0010) | M/M
Referenced Film Session Sequence | (2010,0500) | M/M
>Referenced SOP Class UID | (0008,1150) | M/M
>Referenced SOP Instance UID | (0008,1155) | M/M
Referenced Image Box Sequence | (2010,0510) | -/M
>Referenced SOP Class UID | (0008,1150) | -/M
>Referenced SOP Instance UID | (0008,1155) | -/M
Referenced Basic Annotation Box Sequence | (2010,0520) | -/MC (Required if optional Annotation SOP was negotiated)
>Referenced SOP Class UID | (0008,1150) | -/MC (Required if sequence is present)
>Referenced SOP Instance UID | (0008,1155) | -/MC (Required if sequence is present)
Film Orientation | (2010,0040) | U/M
Film Size ID | (2010,0050) | U/M
Magnification Type | (2010,0060) | U/M
Max Density | (2010,0130) | U/M
Configuration Information | (2010,0150) | U/M
Referenced Presentation LUT Sequence | (2050,0500) | U/MC (Required if Presentation LUT is supported)
>Referenced SOP Class UID | (0008,1150) | U/MC (Required if sequence is present)
>Referenced SOP Instance UID | (0008,1155) | U/MC (Required if sequence is present)
Annotation Display Format ID | (2010,0030) | U/U
Smoothing Type | (2010,0080) | U/U
Border Density | (2010,0100) | U/U
Empty Image Density | (2010,0110) | U/U
Min Density | (2010,0120) | U/U
Trim | (2010,0140) | U/U
Illumination | (2010,015E) | U/MC (Required if Presentation LUT is supported)
Reflected Ambient Light | (2010,0160) | U/MC (Required if Presentation LUT is supported)
Requested Resolution ID | (2020,0050) | U/U
ICC Profile | (0028,2000) | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

If the Illumination (2010,015E) and Reflected Ambient Light (2010,0160) values, respectively termed L0 and La, are not created, the following default values are recommended for grayscale printing:

- For transmissive film: L0 = 2000 cd/m2. La = 10 cd/m2.

- For reflective media: L0 = 150 cd/m2.

The ICC Profile (0028,2000) Attribute shall only be used to describe the color space of images for color printing, i.e., in conjunction with the Basic Color Image Box SOP Class. It shall not be used with the Basic Grayscale Image Box SOP Class.

###### H.4.2.2.1.2 Status

Table H.4.2.2.1.2-1 defines the specific status code values that may be returned in a N-CREATE or N-SET response for this SOP Class. See PS3.7 for additional response status codes of N-CREATE and N-SET DIMSE Services.

Table H.4.2.2.1.2-1. Status Values for Basic Film Box SOP Class

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Film Box successfully created | 0000
Warning | Requested Min Density or Max Density outside of printer's operating range. The printer will use its respective minimum or maximum density value instead. | B605
Failure | Failed: There is an existing Film Box that has not been printed and N-ACTION at the Film Session level is not supported. A new Film Box will not be created when a previous Film Box has not been printed. | C616

###### H.4.2.2.1.3 Behavior

The SCU uses the N-CREATE to request the SCP to create a Basic Film Box SOP Instance. The SCU shall initialize Attributes of the SOP Class as specified in Section H.2.4.

The SCP shall create the SOP Instance and shall initialize Attributes of the SOP Class as specified in Section H.2.4.

### Note

If there exists a Film Box SOP Instance that has not been printed and the SCP does not support N-ACTION on the Film Session, then the SCP should fail the N-CREATE of the new SOP Instance.

Upon the creation of the Basic Film Box SOP Instance, the SCP shall append the SOP Class/Instance UID pair of the created Basic Film Box SOP Instance to the Attribute Referenced Film Box Sequence (2000,0500) of the parent Basic Film Session SOP Instance to link the Basic Film Box SOP Instance to the Basic Film Session SOP Instance.

The SCP shall create Image Box SOP Instances of the appropriate Image Box SOP Class for each image box as defined by the Attribute Image Display Format (2010,0010). The SOP Class of the created Image Box SOP Instance depends on the Meta SOP Class context. For example the Grayscale Image Box SOP Class is related to the Basic Grayscale Print Management Meta SOP Class. The Meta SOP Class context is conveyed by the Presentation Context ID that corresponds with the Meta SOP Class and is defined at Association setup.

The SCP shall append the SOP Class/Instance UID pair of the created Image Box SOP Instance to the Referenced Image Box Sequence Attribute of the parent Basic Film Box SOP Instance to link each Image Box SOP Instance to the Basic Film Box SOP Instance. The SCP returns the list of Image Box SOP Class/Instance UID pairs in the Attribute Referenced Image Box Sequence (2010,0510) of the N-CREATE response message.

If supported, the SCP shall create Basic Annotation Box SOP Instances for each Annotation Box defined by the Attribute Annotation Display Format ID and shall append the SOP Class/Instance UID pair of the created Basic Annotation Box SOP Instance to the Referenced Annotation Box Sequence Attribute of the parent Basic Film Box SOP Instance to link each Basic Annotation Box SOP Instance to the Basic Film Box SOP Instance. The SCP returns the list of Basic Annotation Box SOP Class/Instance UID pairs in the Attribute Referenced Annotation Box Sequence of the N-CREATE response message. The Annotation Boxes shall support the same character sets as the Basic Film Box.

The character set supported by the Film Box shall be the same as the character set of the Basic Film Session.

The SCP shall return the status code of the requested SOP Instance creation. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

##### H.4.2.2.2 N-SET

The N-SET may be used to update the last created instance of the Basic Film Box SOP Class.

###### H.4.2.2.2.1 Attributes

The Attributes that may be updated are shown in Table H.4-7.

Table H.4-7. N-SET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Magnification Type | (2010,0060) | U/M
Max Density | (2010,0130) | U/M
Configuration Information | (2010,0150) | U/M
Referenced Presentation LUT Sequence | (2050,0500) | U/MC (Required if Presentation LUT is supported)
>Referenced SOP Class UID | (0008,1150) | U/MC (Required if sequence is present)
>Referenced SOP Instance UID | (0008,1155) | U/MC (Required if sequence is present)
Smoothing Type | (2010,0080) | U/U
Border Density | (2010,0100) | U/U
Empty Image Density | (2010,0110) | U/U
Min Density | (2010,0120) | U/U
Trim | (2010,0140) | U/U
Illumination | (2010,015E) | U/MC (Required if Presentation LUT is supported)
Reflected Ambient Light | (2010,0160) | U/MC (Required if Presentation LUT is supported)
ICC Profile | (0028,2000) | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

###### H.4.2.2.2.2 Status

The status values that are specific for this SOP Class are defined in Section H.4.2.2.1.2.

###### H.4.2.2.2.3 Behavior

The SCU uses the N-SET to request the SCP to update a Basic Film Box SOP Instance. The SCU shall only specify the SOP Instance UID of the last created Basic Film Box SOP Instance in the N-SET request primitive, and shall specify the list of Attributes for which the Attribute Values are to be set.

The SCP shall set new values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance update. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

##### H.4.2.2.3 N-DELETE

The N-DELETE is used to delete the last created Basic Film Box SOP Instance hierarchy. As a result all the information describing the last film is deleted.

The Basic Film Box SOP Instance hierarchy consists of one Basic Film Box SOP Instance, one or more Image Box SOP Instances, zero or more Basic Annotation Box SOP Instances, zero or more Presentation LUT SOP Instances, and zero or more Basic Print Image Overlay Box SOP instances.

### Note

There is no provision in the DICOM Standard to delete previously created Film Box SOP Instances.

###### H.4.2.2.3.1 Behavior

The SCU uses the N-DELETE to request the SCP to delete the Basic Film Box SOP Instance hierarchy. The SCU shall specify in the N-DELETE request primitive the SOP Instance UID of the last created Basic Film Box (root).

The SCP shall delete the specified SOP Instance hierarchy and shall remove the UID of the deleted Basic Film Box SOP Instance from the list of SOP Instance UIDs of the Film Box UIDs Attribute of the parent Basic Film Session SOP Instance.

The SCP shall return the status code of the requested SOP Instance hierarchy deletion. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

The SCP shall not delete SOP Instances in the hierarchy as long as there are outstanding references to these SOP Instances

### Note

It is beyond the scope of the Standard to specify when the SCP actually deletes the Image SOP Instances with outstanding references.

###### H.4.2.2.3.2 Status

There are no specific status codes. See PS3.7 for response status codes.

##### H.4.2.2.4 N-ACTION

The N-ACTION is used to print one or more copies of the last created instance of the Film Box.

###### H.4.2.2.4.1 Attributes

The arguments of the N-ACTION are defined as shown in Table H.4-8.

The Action Reply argument is encoded as a DICOM Data Set. The Data Set only contains the Attribute Referenced Print Job Sequence (2100,0500), which includes the Referenced SOP Class UID (0008,1150) and the Referenced SOP Instance UID (0008,1155).

If the SCP supports the Print Job SOP Class, the Action Reply argument is contained in the N-ACTION response. Otherwise, the Action Reply is not contained in the N-ACTION response.

Table H.4-8. N-ACTION Arguments

Action Type Name | Action Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Print | 1 | Referenced Print Job Sequence | (2100,0500) | -/MC Required if Print Job SOP is supported
|  | >Referenced SOP Class UID | (0008,1150) | -/MC Required if Referenced Print Job Sequence (2100,0500) is present
|  | >Referenced SOP Instance UID | (0008,1155) | -/MC Required if Referenced Print Job Sequence (2100,0500) is present

###### H.4.2.2.4.2 Status

Table H.4-9 defines the specific status code values that may be returned in a N-ACTION response. See PS3.7 for additional response status codes.

Table H.4-9. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Film accepted for printing; if supported, the Print Job SOP Instance is created | 0000
Warning | Film Box SOP Instance hierarchy does not contain Image Box SOP Instances (empty page) | B603
| Image size is larger than image box size, the image has been demagnified. | B604
| Image size is larger than the Image Box size. The Image has been cropped to fit. | B609
| Image size or Combined Print Image size is larger than the Image Box size. Image or Combined Print Image has been decimated to fit. | B60A
Failure | Failed: Unable to create Print Job SOP Instance; print queue is full | C602
| Failed: Image size is larger than image box size | C603
| Failed: Combined Print Image size is larger than the Image Box size | C613

### Note

Previous versions of the DICOM Standard defined the status code of C604. This code was specified for the case of an image position collision. Since image position collision is not a possible state, the code has been retired.

###### H.4.2.2.4.3 Behavior

The SCU uses the N-ACTION to request the SCP to print one or more copies of a single film of the film session. The SCU shall only specify the SOP Instance UID of the last created Basic Film Box SOP Instance in the N-ACTION request primitive.

The SCP shall make a copy of the "working" Basic Film Session SOP Instance and the "working" Basic Film Box SOP Instance hierarchy, which contains all the information to control the Print Process. Hence the SCU may further update the "working" SOP Instances without affecting the result of previous print requests. The execution of the Print Process is monitored by the Print Job SOP Class (if supported by the SCP) and the Printer SOP Class.

If the SCP supports the Print Job SOP Class then the SCP shall create a Print Job SOP Instance, which contains the copy of the "working" Basic Film Session SOP Instance hierarchy and shall return the Print Job SOP Class/Instance UID pair in the Attribute Referenced Print Job Sequence of the Action Reply argument.

The SCP shall return the status code of the requested operation. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

#### H.4.2.3 SOP Class Definition and UID

The Basic Film Box SOP Class UID shall have the value "1.2.840.10008.5.1.1.2".

### H.4.3 Image Box SOP Classes

#### H.4.3.1 Basic Grayscale Image Box SOP Class

##### H.4.3.1.1 IOD Description

The Basic Image Box IOD is an abstraction of the presentation of an image and image related data in the image area of a film. The Basic Image Box IOD describes the presentation parameters and image pixel data that apply to a single image of a sheet of film.

The Basic Grayscale Image Box SOP Instance is created by the SCP at the time the Basic Film Box SOP Instance is created, based on the value of the Basic Film Box Attribute Image Display Format (2010,0010).

The Basic Grayscale Image Box SOP Instance refers to zero or one Image Overlay Box SOP Instance and zero or one Presentation LUT SOP Instance.

##### H.4.3.1.2 DIMSE Service Group

The DIMSE Services applicable to the IOD are shown below.

Table H.4.3.1.2-1. DIMSE Services Applicable to Basic Grayscale Image Box

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-SET | M/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

### Note

There is no N-CREATE because Instances of the Basic Grayscale Image Box SOP Class are created by the SCP as a result of the N-CREATE of the Film Box SOP Instance.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

###### H.4.3.1.2.1 N-SET

The N-SET may be used to update an instance of the Basic Grayscale Image Box SOP Class.

###### H.4.3.1.2.1.1 Attributes

The Attributes that may be updated are shown in Table H.4-10.

Table H.4-10. N-SET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Image Box Position | (2020,0010) | M/M
Basic Grayscale Image Sequence | (2020,0110) | M/M
>Samples Per Pixel | (0028,0002) | M/M
>Photometric Interpretation | (0028,0004) | M/M
>Rows | (0028,0010) | M/M
>Columns | (0028,0011) | M/M
>Pixel Aspect Ratio | (0028,0034) | MC/M (Required if the aspect ration is not 1\1)
>Bits Allocated | (0028,0100) | M/M
>Bits Stored | (0028,0101) | M/M
>High Bit | (0028,0102) | M/M
>Pixel Representation | (0028,0103) | M/M
>Pixel Data | (7FE0,0010) | M/M
Polarity | (2020,0020) | U/M
Magnification Type | (2010,0060) | U/U
Smoothing Type | (2010,0080) | U/U
Min Density | (2010,0120) | U/U
Max Density | (2010,0130) | U/U
Configuration Information | (2010,0150) | U/U
Requested Image Size | (2020,0030) | U/U
Requested Decimate/Crop Behavior | (2020,0040) | U/U
Referenced Presentation LUT Sequence | (2050,0500) | U/U
> Referenced SOP Class UID | (0008,1150) | U/U
> Referenced SOP Instance UID | (0008,1155) | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

The values of Magnification Type (2010,0060) and Smoothing Type (2010,0080) of a particular image box override the values of Magnification Type and Smoothing Type of the film box.

Values for Referenced Presentation LUT Sequence override any Presentation LUT that may have been set at the Basic Film Box. Values for Min/Max Density override any Density values that may have been set at the Basic Film Box.

###### H.4.3.1.2.1.2 Status

Table H.4.3.1.2.1.2-1 defines the specific status code values that may be returned in a N-SET response. See PS3.7 for additional response status codes.

Table H.4.3.1.2.1.2-1. Status Values for Basic Grayscale Image Box SOP Class

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Image successfully stored in Image Box | 0000
Warning | Image size larger than image box size, the image has been demagnified. | B604
| Requested Min Density or Max Density outside of printer's operating range. The printer will use its respective minimum or maximum density value instead. | B605
| Image size is larger than the Image Box size. The Image has been cropped to fit. | B609
| Image size or Combined Print Image size is larger than the Image Box size. The Image or Combined Print Image has been decimated to fit. | B60A
Failure | Failed: Image size is larger than image box size | C603
| Failed: Insufficient memory in printer to store the image | C605
| Failed: Combined Print Image size is larger than the Image Box size | C613

###### H.4.3.1.2.1.3 Behavior

The SCU uses the N-SET to request the SCP to update a Basic Grayscale Image Box SOP Instance. The SCU shall only specify the SOP Instance UID of a Basic Grayscale Image Box belonging to the last created Film Box SOP Instance and shall specify the list of Attributes for which the Attribute Values are to be set.

To instruct the SCP to erase the image in the image position, the SCU shall set a zero length and no value in the Attribute Basic Grayscale Image Sequence (2020,0110).

The SCP shall set new values for the specified Attributes of the specified SOP Instance.

### Note

The image in this N-SET supersedes any image previously set in the Image Box.

The SCP shall return the status code of the requested SOP Instance update. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

If Requested Decimate/Crop Behavior (2020,0040) specifies DECIMATE, Magnification Type (2010,0060) specifies NONE, and the image is too large to fit the Image Box, the SCP shall fail the N-SET.

##### H.4.3.1.3 SOP Class Definition and UID

The Basic Grayscale Image Box SOP Class UID shall have the value "1.2.840.10008.5.1.1.4".

#### H.4.3.2 Basic Color Image Box SOP Class

##### H.4.3.2.1 IOD Description

The Basic Image Box IOD is an abstraction of the presentation of an image and image related data in the image area of a film. The Basic Image Box IOD describes the presentation parameters and image pixel data that apply to a single image of a sheet of film.

The Basic Color Image Box SOP Instance is created by the SCP at the time the Basic Film Box SOP Instance is created, based on the value of the Basic Film Box Attribute Image Display Format (2010,0010).

The Basic Color Image Box SOP Instance refers to zero or one Image Overlay Box SOP Instance.

##### H.4.3.2.2 DIMSE Service Group

The following DIMSE Services are applicable to the IOD.

Table H.4.3.2.2-1. DIMSE Services Applicable to Basic Color Image Box

DIMSE Service element | Usage SCU/SCP
--- | ---
N-SET | M/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

### Note

There is no N-CREATE because Instances of the Basic Color Image Box SOP Class are created by the SCP as a result of the N-CREATE of the Film Box SOP Instance.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

###### H.4.3.2.2.1 N-SET

The N-SET may be used to update an instance of the Basic Color Image Box SOP Class.

###### H.4.3.2.2.1.1 Attributes

The Attributes that may be updated are shown in Table H.4-11.

The meaning of the Usage SCU/SCP is described in Section H.2.4.

The values of Magnification Type (2010,0060) and Smoothing Type (2010,0080) of a particular image box override the values of Magnification Type and Smoothing Type of the film box.

Table H.4-11. N-SET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Image Box Position | (2020,0010) | M/M
Basic Color Image Sequence | (2020,0111) | M/M
>Samples Per Pixel | (0028,0002) | M/M
>Photometric Interpretation | (0028,0004) | M/M
>Planar Configuration | (0028,0006) | M/M
>Rows | (0028,0010) | M/M
>Columns | (0028,0011) | M/M
>Pixel Aspect Ratio | (0028,0034) | MC/M (Required if the aspect ration is not 1\1)
>Bits Allocated | (0028,0100) | M/M
>Bits Stored | (0028,0101) | M/M
>High Bit | (0028,0102) | M/M
>Pixel Representation | (0028,0103) | M/M
>Pixel Data | (7FE0,0010) | M/M
Polarity | (2020,0020) | U/M
Magnification Type | (2010,0060) | U/U
Smoothing Type | (2010,0080) | U/U
Requested Image Size | (2020,0030) | U/U
Requested Decimate/Crop Behavior | (2020,0040) | U/U

###### H.4.3.2.2.1.2 Status

Table H.4.3.1.2.1.2-1 defines the specific status code values that may be returned in a N-SET response. See PS3.7 for additional response status codes.

Table H.4.3.2.2.1.2-1. Status Values for Basic Color Image Box SOP Class

Service Status | Further Meaning | Status Code
--- | --- | ---
Warning | Image size larger than image box size, the image has been demagnified. | B604
| Image size is larger than the Image Box size. The Image has been cropped to fit. | B609
| Image size or Combined Print Image size is larger than the Image Box size. The Image or Combined Print Image has been decimated to fit. | B60A
Failure | Failed: Image size is larger than image box size | C603
| Failed: Insufficient memory in printer to store the image | C605
| Failed: Combined Print Image size is larger than the Image Box size | C613

###### H.4.3.2.2.1.3 Behavior

The SCU uses the N-SET to request the SCP to update a Basic Color Image Box SOP Instance. The SCU shall only specify the SOP Instance UID of a Basic Color Image Box belonging to the last created Film Box SOP Instance and shall specify the list of Attributes for which the Attribute Values are to be set.

To instruct the SCP to erase the image in the image position, the SCU shall set a zero length and no value in the Attribute Basic Color Image Sequence (2020,0111).

The SCP shall set new values for the specified Attributes of the specified SOP Instance.

### Note

The image in this N-SET supersedes any image previously set in the Image Box.

The SCP shall return the status code of the requested SOP Instance update. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

If Requested Decimate/Crop Behavior (2020,0040) specifies DECIMATE, Magnification Type (2010,0060) specifies NONE, and the image is too large to fit the Image Box, the SCP shall fail the N-SET.

The color characteristics of the Pixel Data (7FE0,0010) in the Basic Color Image Box may be described by an ICC Input Device Profile specified in the Film Box, in which case the same profile shall apply to all the Image Boxes in the same Film Box. See Section H.4.2.2.1 and Section H.4.2.2.2.

##### H.4.3.2.3 SOP Class Definition and UID

The Basic Color Image Box SOP Class UID shall have the value "1.2.840.10008.5.1.1.4.1".

#### H.4.3.3 Referenced Image Box SOP Class (Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

### H.4.4 Basic Annotation Box SOP Class

#### H.4.4.1 IOD Description

The Basic Annotation Box IOD is an abstraction of the presentation of an annotation (e.g., text string) on a film. The Basic Annotation Box IOD describes the most used text related presentation parameters.

The Basic Annotation Box SOP Instance is created by the SCP at the time the Basic Film Box SOP Instance is created, based on the value of the Attribute Annotation Display Format ID (2010,0030) of the Basic Film Box.

#### H.4.4.2 DIMSE Service Group

The DIMSE Services that are applicable to the IOD are shown below.

Table H.4.4.2-1. DIMSE Services Applicable to Basic Annotation Box

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-SET | U/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

### Note

There is no N-CREATE because the Instances of the Basic Annotation Box SOP Class are created by the Film Box SOP Instance.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.4.2.1 N-SET

The N-SET is used to update the Basic Annotation Box SOP Instance.

###### H.4.4.2.1.1 Attributes

The Attributes that may be updated are shown in Table H.4-13.

Table H.4-13. N-SET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Annotation position | (2030,0010) | M/M
Text String | (2030,0020) | U/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

###### H.4.4.2.1.2 Status

There are no specific status codes. See PS3.7 for response status codes.

###### H.4.4.2.1.3 Behavior

The SCU uses the N-SET to request the SCP to update a Basic Annotation Box SOP Instance. The SCU shall only specify the SOP Instance UID of the Basic Annotation Box belonging to the last created Film Box SOP Instance in the N-SET request primitive, and shall specify the list of Attributes for which the Attribute Values are to be set. The SCU may erase the text string by setting a zero length value in the Attribute Text String (2030,0020).

The SCP shall set new values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance update. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

#### H.4.4.3 SOP Class Definition and UID

The Basic Annotation Box SOP Class UID shall have the value "1.2.840.10008.5.1.1.15".

### H.4.5 Print Job SOP Class

#### H.4.5.1 IOD Description

The Print Job IOD is an abstraction of the Print Job transaction and is the basic information entity to monitor the execution of the Print Process. A Print Job contains one film or multiple films, all belonging to the same film session.

The Print Job SOP Class is created by N-ACTION operation of the Film Session SOP Class, Film Box SOP Class, or Pull Print Request SOP Class. The Print Job SOP Instance is deleted after the films are printed or after a failure condition.

#### H.4.5.2 DIMSE Service Group

The DIMSE Services that are applicable to the IOD are shown below.

Table H.4.5.2-1. DIMSE Services Applicable to Print Job

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-EVENT-REPORT | M/M
N-GET | U/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.5.2.1 N-EVENT-REPORT

The N-EVENT-REPORT is used to report execution status changes to the SCU in an asynchronous way.

###### H.4.5.2.1.1 Attributes

The arguments of the N-EVENT-REPORT are defined as shown in Table H.4-14.

### Note

The encoding of Notification Event Information is defined in PS3.7.

Table H.4-14. Notification Event Information

Event Type Name | Event Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Pending | 1 | Execution Status Info | (2100,0030) | U/M
|  | Film Session Label | (2000,0050) | U/U
|  | Printer Name | (2110,0030) | U/U
Printing | 2 | Execution Status Info | (2100,0030) | U/M
|  | Film Session Label | (2000,0050) | U/U
|  | Printer Name | (2110,0030) | U/U
Done | 3 | Execution Status Info | (2100,0030) | U/M
|  | Film Session Label | (2000,0050) | U/U
|  | Printer Name | (2110,0030) | U/U
Failure | 4 | Execution Status Info | (2100,0030) | U/M
|  | Film Session Label | (2000,0050) | U/U
|  | Printer Name | (2110,0030) | U/U

###### H.4.5.2.1.2 Behavior

The SCP uses the N-EVENT-REPORT to inform the SCU about each execution change. The SCP shall only use the N-EVENT-REPORT within the context of the Association in which the Print Job SOP Instance was created.

### Note

If SCU wants to monitor the complete execution process of a Print Job, then the SCU should only release the Association after the receipt of the event type Done or Failure.

The SCU shall return the confirmation from the N-EVENT-REPORT operation.

If the Event Type Name = Failure or Pending then the error/pending condition is stored in the Execution Status Info argument. The possible values of the Execution Status Info argument are defined in Section H.4.5.3.

If the Event Type Name = Failure or Done then the SCP shall delete the Print Job SOP Instance after receiving a confirmation from the SCU.

###### H.4.5.2.1.3 Status

There are no specific status codes. See PS3.7 for response status codes.

##### H.4.5.2.2 N-GET

The N-GET is used to retrieve an instance of the Print Job SOP Class.

###### H.4.5.2.2.1 Attributes

The Attributes that may be retrieved are shown in Table H.4-15.

Table H.4-15. N-GET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Execution Status | (2100,0020) | U/M
Execution Status Info | (2100,0030) | U/M
Print Priority | (2000,0020) | U/M
Creation Date | (2100,0040) | U/U
Creation Time | (2100,0050) | U/U
Printer Name | (2110,0030) | U/U
Originator | (2100,0070) | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

###### H.4.5.2.2.2 Behavior

The SCU uses the N-GET to request the SCP to get a Print Job SOP Instance. The SCU shall specify in the N-GET request primitive the UID of the SOP Instance to be retrieved.

The SCP shall return the values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance retrieval. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

###### H.4.5.2.2.3 Status

There are no specific status codes. See PS3.7 for response status codes.

#### H.4.5.3 Execution Status Information

Status Information is defined in PS3.3. Implementation specific warning and error codes shall be defined in the Conformance Statement.

#### H.4.5.4 SOP Class Definition and UID

The Print Job SOP Class UID shall have the value "1.2.840.10008.5.1.1.14".

### H.4.6 Printer SOP Class

#### H.4.6.1 IOD Description

The Printer IOD is an abstraction of the hard copy printer and is the basic Information Entity to monitor the status of the printer.

The Printer SOP Instance is created by the SCP during start-up of the hard copy printer and has a well-known SOP Instance UID.

#### H.4.6.2 DIMSE Service Group

The DIMSE Services that are applicable to the IOD are shown below.

Table H.4.6.2-1. DIMSE Services Applicable to Printer

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-EVENT-REPORT | M/M
N-GET | U/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.6.2.1 N-EVENT-REPORT

The N-EVENT-REPORT is used to report the changes of the printer status in an asynchronous way.

###### H.4.6.2.1.1 Attributes

The arguments of the N-EVENT-REPORT are defined as shown in Table H.4-16.

### Note

The encoding of Notification Event Information is defined in PS3.7.

Table H.4-16. Notification Event Information

Event Type Name | Event Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Normal | 1 |  |  |
Warning | 2 | Printer Status Info | (2110,0020) | U/M
|  | Film Destination | (2000,0040) | U/U
|  | Printer Name | (2110,0030) | U/U
Failure | 3 | Printer Status Info | (2110,0020) | U/M
|  | Film Destination | (2000,0040) | U/U
|  | Printer Name | (2110,0030) | U/U

###### H.4.6.2.1.2 Behavior

The SCP shall use the N-EVENT-REPORT to inform the SCU about each execution change. The SCP shall send the events to all SCUs with which the SCP has an Association that is using the printer for which the status changes.

The SCU shall return the confirmation of the N-EVENT-REPORT operation.

If the Event Type Name = Warning or Failure then the warning/failure condition is stored in the Printer Status Info argument. The possible values the Printer Status Info argument are defined in Section H.4.6.3.

###### H.4.6.2.1.3 Status

There are no specific status codes. See PS3.7 for response status codes.

##### H.4.6.2.2 N-GET

The N-GET is used to retrieve an instance of the Printer SOP Class.

###### H.4.6.2.2.1 Attributes

The Attributes that may be retrieved are shown in Table H.4-17.

Table H.4-17. N-GET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Printer Status | (2110,0010) | U/M
Printer Status Info | (2110,0020) | U/M
Printer Name | (2110,0030) | U/U
Manufacturer | (0008,0070) | U/U
Manufacturer Model Name | (0008,1090) | U/U
Device Serial Number | (0018,1000) | U/U
Software Versions | (0018,1020) | U/U
Date Last Calibration | (0018,1200) | U/U
Last Calibration | (0018,1201) | U/U

The meaning of the Usage SCU/SCP is described in Section H.2.4.

###### H.4.6.2.2.2 Behavior

The SCU uses the N-GET to request the SCP to get a Printer SOP Instance. The SCU shall specify in the N-GET request primitive the UID of the SOP Instance to be retrieved.

The SCP shall return the values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance retrieval. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

###### H.4.6.2.2.3 Status

There are no specific status codes. See PS3.7 for response status codes.

#### H.4.6.3 Printer Status Information

Status Information is defined in PS3.3. Implementation specific warning and error codes shall be defined in the Conformance Statement.

#### H.4.6.4 SOP Class Definition and UID

The Printer SOP Class UID shall have the value "1.2.840.10008.5.1.1.16".

#### H.4.6.5 Reserved Identifications

The well-known UID of the Printer SOP Instance shall have the value "1.2.840.10008.5.1.1.17".

### H.4.7 VOI LUT Box SOP Class(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

### H.4.8 Image Overlay Box SOP Class(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

### H.4.9 Presentation LUT SOP Class

#### H.4.9.1 Information Object Description

The Presentation LUT Information Object is an abstraction of a Presentation LUT (see Section H.2.1.1). The objective of the Presentation LUT is to realize image display tailored for specific modalities, applications, and user preferences. It is used to prepare image pixel data for display on devices that conform to the Grayscale Standard Display Function defined in PS3.14 Grayscale Standard Display Function.

### Note

The density range to be printed, Min Density to Max Density, is specified at either the Film Box or the Image Box. As follows from the definition for Min Density and Max Density in PS3.3, if the requested minimum density is lower than the minimum printer density, or the requested maximum density is greater than the maximum printer density, the printer will use its minimum or maximum density, respectively, when computing the standard response.

The output of the Presentation LUT is Presentation Values (P-Values). P-Values are approximately related to human perceptual response. They are intended to facilitate common input for both hardcopy and softcopy display devices. P-Values are intended to be independent of the specific class or characteristics of the display device.

The Presentation LUT is not intended to alter the appearance of the pixel values, as specified as specified by the Photometric Interpretation (0028,0004) and Polarity (2020,0020).

The Basic Film Box Information Object, the Basic Image Box Information Object and the Referenced Image Box Object reference the Presentation LUT.

If the Configuration Information Attribute (2010,0150) of the Basic Film Box IOD contains information similar to the Presentation LUT, then the Presentation LUT Attributes shall take precedence.

##### H.4.9.1.1 Mapping of P-Values to Optical Density

The mathematical definition of the Grayscale Standard Display Function and mapping of P-Values to optical density for reflective and transmissive printers is contained in PS3.14 Grayscale Standard Display Function.

#### H.4.9.2 DIMSE Service Group

The following DIMSE Services are applicable to the association related Presentation LUT Information Object:

Table H.4.9.2-1. DIMSE Services Are Applicable to Presentation LUT

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-DELETE | U/M

The meaning of the Usage SCU/SCP is described in section Section H.2.4.

This section describes the behavior of the DIMSE Services, which are specific for this Information Object. The general behavior of the DIMSE services is specified in PS3.7.

##### H.4.9.2.1 N-CREATE

The N-CREATE Service Element is used to create an instance of the Presentation LUT SOP Class.

###### H.4.9.2.1.1 Attributes

The Attribute list of the N-CREATE Service Element is defined as shown in Table H.4-23.

Table H.4-23. N-CREATE Attribute List

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Presentation LUT Sequence | (2050,0010) | MC/M (Required if Presentation LUT Shape (2050,0020) is not present. Not allowed otherwise.)
>LUT Descriptor | (0028,3002) | MC/M (Required if sequence is present). See Section H.4.9.2.1.1.1.
>LUT Explanation | (0028,3003) | U/U
>LUT Data | (0028,3006) | MC/M (Required if sequence is present)
Presentation LUT Shape | (2050,0020) | MC/M (Required if Presentation LUT Sequence (2050,0010) is not present. Not allowed otherwise.) SCPs shall support the Enumerated Values IDENTITY and LIN OD

###### H.4.9.2.1.1.1 LUT Descriptor

The first value (number of entries in the LUT) shall be equal to:

- 256 if Bits Stored = 8,

- 4096 if Bits Stored = 12.

The second value shall be equal to 0.

The third value (number of bits for each LUT entry) shall be 10-16.

See the definition in PS3.3 for further explanation.

###### H.4.9.2.1.2 Status

Table H.4.9.2.1.2-1 defines the specific status code values that may be returned in a N-CREATE response. See PS3.7 for additional response status codes

Table H.4.9.2.1.2-1. Status Values for Presentation LUT SOP Class

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Presentation LUT successfully created | 0000
Warning | Requested Min Density or Max Density outside of printer's operating range. The printer will use its respective minimum or maximum density value instead. | B605

###### H.4.9.2.1.3 Behavior

The SCU uses the N-CREATE Service Element to request the SCP to create a Presentation LUT SOP Instance. The SCU shall initialize Attributes of the SOP Class as specified in section Section H.2.4.

The SCU shall create the Presentation LUT prior to referencing it from the Film Box or the Image Box.

The Presentation LUT persists in the SCP as long as the Association in which it was created is open or an explicit N-DELETE is issued by the SCU.

The SCP shall return the status code of the requested SOP Instance creation. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

The SCP shall use the Grayscale Standard Display Function as specified in PS3.14 Grayscale Standard Display Function to convert the output of the Presentation LUT to density for printing. If the SCU specifies values for Illumination (2010,015E) and/or Reflected Ambient Light (2010,0160), these values shall be used instead of the default or configured values of the SCP. If these values are not supplied, the SCP shall use its default or configured values. (see Section H.4.2.2.1.1 for suggested defaults).

##### H.4.9.2.2 N-DELETE

The N-DELETE Service Element is used to delete the Presentation LUT SOP Instance.

###### H.4.9.2.2.1 Status

There are no specific status codes. See PS3.7 for response status codes.

###### H.4.9.2.2.2 Behavior

The SCU uses the N-DELETE Service Element to request the SCP to delete the Presentation LUT SOP Instance. The SCU shall specify the Presentation LUT SOP Instance UID.

The SCP shall not delete a Presentation LUT SOP Instance as long as there are outstanding references to it. Otherwise, it shall delete the specified Presentation LUT SOP Instance. The N-DELETE of a Presentation LUT will prevent the SCU from further referencing it. The SCU shall not reference a previously deleted Presentation LUT. The SCP shall return the status code of the requested Presentation LUT SOP Instance deletion. The meaning of success, warning, and failure status codes is defined in Section H.2.5.

##### H.4.9.2.4 SOP Class Definition and UID

The Presentation LUT SOP Class UID is "1.2.840.10008.5.1.1.23".

### H.4.10 Pull Print Request SOP Class(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-2004.

### H.4.11 Printer Configuration Retrieval SOP Class

#### H.4.11.1 IOD Description

The Printer Configuration IOD is an abstraction of the hard copy printer and is the basic Information Entity to retrieve key imaging characteristics of the printer

The Printer Configuration Retrieval SOP Instance is created by the SCP during start-up of the hard copy printer and has a well-known SOP Instance UID.

#### H.4.11.2 DIMSE Service Group

The DIMSE Services that are applicable to the IOD are shown in Table H.4.11.2-1.

Table H.4.11.2-1. IOD DIMSE Services

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-GET | M/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Service that are specific for this IOD. The general behavior of the DIMSE Services is specified in PS3.7.

##### H.4.11.2.2 N-GET

The N-GET is used to retrieve an instance of the Printer Configuration Retrieval SOP Class.

###### H.4.11.2.2.1 Attributes

The Attributes that are retrieved are shown in Table H.4-26.

Table H.4-26. N-GET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Printer Configuration Sequence | (2000,001E) | U/M
>SOP Classes Supported | (0008,115A) | -/M
>Maximum Memory Allocation | (2000,0061) | -/M
>Memory Bit Depth | (2000,00A0) | -/M
>Printing Bit Depth | (2000,00A1) | -/M
>Media Installed Sequence | (2000,00A2) | -/M
>>Item Number | (0020,0019) | -/M
>>Medium Type | (2000,0030) | -/M
>>Film Size ID | (2010,0050) | -/M
>>Min Density | (2010,0120) | -/MC Required if Sequence is Present and Min Density is known
>>Max Density | (2010,0130) | -/M
>Other Media Available Sequence | (2000,00A4) | -/M
>>Medium Type | (2000,0030) | -/M
>>Film Size ID | (2010,0050) | -/M
>>Min Density | (2010,0120) | -/MC Required if Sequence is Present and Min Density is known
>>Max Density | (2010,0130) | -/M
>Supported Image Display Formats Sequence | (2000,00A8) | -/M
>>Rows | (0028,0010) | -/MC Required if all Image Boxes in the Display Format have the same number of rows and columns
>>Columns | (0028,0011) | -/MC Required if all Image Boxes in the Display Format have the same number of rows and columns
>>Image Display Format | (2010,0010) | -/M
>>Film Orientation | (2010,0040) | -/M
>>Film Size ID | (2010,0050) | -/M
>>Printer Resolution ID | (2010,0052) | -/M
>>Printer Pixel Spacing | (2010,0376) | -/M
>>Requested Image Size Flag | (2020,00A0) | -/M
>Default Printer Resolution ID | (2010,0054) | -/M
>Default Magnification Type | (2010,00A6) | -/M
>Other Magnification Types Available | (2010,00A7) | -/M
>Default Smoothing Type | (2010,00A8) | -/M
>Other Smoothing Types Available | (2010,00A9) | -/M
>Configuration Information Description | (2010,0152) | -/M
>Maximum Collated Films | (2010,0154) | -/M
>Decimate/Crop Result | (2020,00A2) | -/M
>Manufacturer | (0008,0070) | -/M
>Manufacturer Model Name | (0008,1090) | -/M
>Printer Name | (2110,0030) | -/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

###### H.4.11.2.2.2 Behavior

The SCU uses the N-GET to request the SCP to get a Printer Configuration Retrieval SOP Instance. The SCU shall specify in the N-GET request primitive the UID of the SOP Instance to be retrieved.

The SCP shall return the values for the specified Attributes of the specified SOP Instance.

The SCP shall return the status code of the requested SOP Instance retrieval.

A Failure status code shall indicate that the SCP has not retrieved the SOP Instance.

###### H.4.11.2.2.3 Status

There are no specific status codes. See PS3.7 for response status codes.

#### H.4.11.3 SOP Class Definition and UID

The Printer Configuration Retrieval SOP Class UID is "1.2.840.10008.5.1.1.16.376".

#### H.4.11.4 Reserved Identifications

The well-known UID of the Printer Configuration Retrieval SOP Instance is "1.2.840.10008.5.1.1.17.376".

### H.4.12 Basic Print Image Overlay Box SOP Class(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-2004.

## H.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure is used to negotiate the supported SOP Classes or Meta SOP Classes. PS3.7 specifies the Association procedures.

The negotiation procedure is used to negotiate the supported Meta SOP Classes and the supported optional SOP Classes. The SCU and SCP shall support at least one Meta SOP Class UID (e.g., Basic Grayscale Print Management Meta SOP Class) and may support additional optional SOP Classes.

The Print Management Service Class does not support extended negotiation.

The SCU shall specify in the A-ASSOCIATE request one Abstract Syntax, in a Presentation Context, for each supported SOP Class or Meta SOP Class.

If the Association is released or aborted then all the SOP Instances except the Print Job SOP Instance and the Printer SOP Instance are deleted.

### Note

Pending Print Jobs will still be printed after the release or abortion of the Association.

## H.6 Example of Print Management SCU Session (Informative)

### H.6.1 Simple Example

Moved to PS3.17.

### H.6.2 Advanced Example(Retired)

This section was previously defined in DICOM. It is now retired. See PS 3.4-1998.

## H.7 Example of the Pull Print Request Meta SOP Class (Informative)

This section was previously defined in DICOM. It is now retired. See PS 3.4-2004.

## H.8 Overlay Examples (Informative)

This section was previously defined in DICOM. It is now retired. See PS 3.4-2004.

# I Media Storage Service Class (Normative)

## I.1 Overview

### I.1.1 Scope

The Media Storage Service Class defines an application-level class-of-service that facilitates the simple transfer of images and associated information between DICOM AEs by means of Storage Media. It supports:

1. The Interchange of images and a wide range of associated information.

### I.1.2 Service Definition

DICOM AEs implement a SOP Class of the Media Storage Service Class by supporting one or more roles among the three roles FSC, FSR or FSU. SOP Classes of the Media Storage Service Class are implemented using the Media Storage Operations (M-WRITE, M-READ, M-DELETE, M-INQUIRE FILE-SET and M-INQUIRE FILE). The services provided by these Operations are defined in PS3.10.

## I.2 Behavior

This Section discusses the FSC, FSR and FSU behavior for SOP Classes of the Media Storage Service Class.

### I.2.1 Behavior of an FSC

The FSC shall be able to create a DICOMDIR File containing the Media Storage Directory SOP Class for the created File-set and create zero or more Files belonging to the File-set by invoking M-WRITE Operations with SOP Instances that meet the requirements of the corresponding IOD. It is the responsibility of the FSC to ensure that the M-WRITE results in the creation of a correctly formatted DICOM File. The manner in which this is achieved is beyond the scope of the DICOM Standard.

The FSC shall support the Media Storage Operation M-INQUIRE FILE-SET and may optionally support the M-INQUIRE FILE.

### I.2.2 Behavior of an FSR

The FSR shall be able to recognize a File-set and the corresponding DICOMDIR containing the Media Storage Directory SOP Class. A valid File-set may contain only a DICOMDIR and no other files. If a File-set contains other files with stored SOP Instance, the FSR shall be capable of invoking M-READ Operations to access the content of the Files of the File-set. The manner in which this is achieved is beyond the scope of the DICOM Standard.

The FSR shall support the Media Storage Operation M-INQUIRE FILE and may optionally support the M-INQUIRE FILE-SET.

### I.2.3 Behavior of an FSU

The FSU shall be able to recognize a File-set and the corresponding DICOMDIR containing the Media Storage Directory SOP Class. A valid File-set may contain only a DICOMDIR and no other files. If a File-set contains other files with stored SOP Instances, the FSU shall be capable of invoking M-READ Operations to access the content of the Files of the File-set. The manner in which this is achieved is beyond the scope of the DICOM Standard.

The FSU shall support the Media Storage Operation M-INQUIRE FILE and the M-INQUIRE FILE-SET.

The FSU shall be able to create one or more new Files belonging to the File-set by invoking M-WRITE Operations with SOP Instances that meet the requirements of the corresponding IOD. It is the responsibility of the FSU to ensure that the M-WRITE results in the creation of a correctly formatted DICOM File. The manner in which this is achieved is beyond the scope of the DICOM Standard. The FSU shall be able to update the contents of the DICOMDIR File by using M-DELETE and or M-WRITE Operations.

## I.3 Conformance

### I.3.1 Conformance as an FSC

An implementation that conforms to one of the SOP Classes of the Media Storage Service Class:

1. shall meet the requirements specified in Section I.2.1;

2. shall meet the requirements specified in PS3.10;

3. shall perform M-WRITE Operations according to the SOP Class specification identified by the SOP Class UID in the Meta File Information;

4. shall support the Media Storage Directory SOP Class (stored in the DICOMDIR File).

### I.3.2 Conformance as an FSR

An implementation that conforms to one of the SOP Classes of the Media Storage Service Class:

1. shall meet the requirements specified in Section I.2.2;

2. shall meet the requirements specified in PS3.10;

3. shall perform M-READ Operations according to the SOP Class specification identified by the SOP Class UID in the Meta File Information. M-READ of non-supported SOP Classes shall simply result in ignoring such stored Data Sets;

4. shall read DICOMDIR Files without a Directory Information Module or with a Directory Information Module including Directory Records of a Type not supported by the implementation.

### I.3.3 Conformance as an FSU

An implementation that conforms to one of the SOP Classes of the Media Storage Service Class:

1. shall meet the requirements specified in Section I.2.3;

2. shall meet the requirements specified in PS3.10;

3. shall perform M-READ Operations according to the SOP Class specification identified by the SOP Class UID in the Meta File Information. M-READ of unsupported SOP Classes shall simply result in ignoring such stored Data Sets;

4. shall perform M-WRITE Operations according to the SOP Class specification identified by the SOP Class UID in the Meta File Information;

5. shall support the Media Storage Directory SOP Class (stored in the DICOMDIR File). Directories containing a Directory Information Module shall be updated by an FSU. Directories containing no Directory Information Module shall not be updated by an FSU;

6. shall read DICOMDIR Files without a Directory Information Module or with a Directory Information Module including Directory Records of a Type not supported by the implementation.

### I.3.4 Conformance Statement Requirements

An implementation of the Media Storage Service Class may support one or more Roles as specified in Table I.3-1. In addition, the implementation may conform to one or more of the SOP Classes of the Media Storage Service Class defined in Section I.4. The Conformance Statement shall be in the format defined by PS3.2.

Table I.3-1. Allowed Combinations of Roles

Roles | FSR | FSC | FSU
--- | --- | --- | ---
With a Directory Information Module | Allowed | Allowed | Allowed Directory shall be updated
With no Directory Information Module | Allowed | Allowed | Allowed Directory shall not be updated

The following aspects shall be documented in the Conformance Statement of any implementation claiming conformance to one of the Media Storage SOP Classes:

- the subset of the Basic Directory Information Object Model supported;

- When the Directory Information Module is created or updated (Directory Information Module supported), the optional standard keys that may be included in Directory Records shall be documented. Private Keys and Private Records may also be documented;

### I.3.5 Standard Extended, Specialized, and Private Conformance

In addition to Standard Media Storage SOP Classes, implementations may support Standard Extended, Specialized and/or Private SOP Classes as defined by PS3.2.

For all three types of SOP Classes, implementations shall be permitted to conform as an FSC, FSR, both or as an FSU. The Conformance Statement shall be in the format defined in PS3.2.

## I.4 Media Storage Standard SOP Classes

The SOP Classes in the Media Storage Service Class identify the Composite IODs to be stored. The following Standard SOP Classes are defined:

- all SOP Classes specified for the DIMSE C-STORE based Storage Service Class identified in Table B.5-1

- all SOP Classes specified for the DIMSE C-STORE based Non-Patient Object Storage Service Class identified in Table GG.3-1

- the media directory SOP Class identified in Table I.4-1

Table I.4-1. Media Storage Standard SOP Classes

SOP Class Name | SOP Class UID | IOD Specification (defined in PS3.3)
--- | --- | ---
Media Storage Directory Storage | 1.2.840.10008.1.3.10 | Basic Directory IOD

### Note

1. Except for the Media Storage Directory SOP Class, all the SOP Classes in the Media Storage Service Class are assigned the same UID Value as the corresponding network communication SOP Classes. This was done to simplify UID assignment. Although these SOP Classes are based on different Operations, the context of their usage should unambiguously distinguish a SOP Class used for Media Storage from a network communication SOP Class.

2. The storage of Normalized Print SOP Instances on media was previously defined in DICOM. They have been retired. See PS 3.4-1998.

3. The storage of Detached and Standalone SOP Instances on media was previously defined in DICOM. They have been retired. See PS 3.4-2004

### I.4.1 Specialization for Standard SOP Classes

#### I.4.1.1 Softcopy Presentation State Storage SOP Classes

See Annex N.

#### I.4.1.2 Structured Reporting Storage SOP Classes

The requirements of Annex O apply to the following SOP Classes:

- Basic Text SR

- Enhanced SR

- Comprehensive SR

- Comprehensive 3D SR

- Extensible SR

- Mammography CAD SR

- Chest CAD SR

- Procedure Log

- X-Ray Radiation Dose SR

- Radiopharmaceutical Radiation Dose SR

- Patient Radiation Dose SR

- Spectacle Prescription Report

- Colon CAD SR

- Macular Grid Thickness and Volume Report

- Implantation Plan SR Document

- Acquisition Context SR

Annex O requirements do not apply to the Key Object Selection Document SOP Class.

## I.5 Retired Standard SOP Classes

See Section B.6.

# J Storage Commitment Service Class (Normative)

## J.1 Overview

### J.1.1 Scope

The mechanism currently defined in DICOM for network based storage of SOP Instances, the Storage Service Class, allows a Service Class User (SCU) to transmit images and other Composite SOP Instances to a Service Class Provider (SCP). However, the Storage Service Class does not specify that the SCP explicitly take responsibility for the safekeeping of data into account. That is, there is no commitment that the SCP will do more than accept the transmitted SOP Instances. In order to have medical image management in addition to medical image communication, there is a need for a Service Class within DICOM that ensures that there is an explicitly defined commitment to store the SOP Instances.

The Storage Commitment Service Class defines an application-level class-of-service that facilitates this commitment to storage. The Storage Commitment Service Class enables an Application Entity (AE) acting as an SCU to request another Application Entity (AE) acting as an SCP to make the commitment for the safekeeping of the SOP Instances (i.e., that the SOP Instances will be kept for an implementation specific period of time and can be retrieved). The AE where such SOP Instances can later be retrieved may be the SCP where storage commitment was accepted or it may be distinct from that SCP.

The SCP implementation defines how it provides its commitment to storage. Certain SCPs may commit to permanently store the SOP Instances (e.g., an archive system) while other SCPs may commit to provide storage of the SOP Instances for a limited amount of time. The SCP is required to document in its Conformance Statement the nature of its commitment to storage (e.g., duration of storage, retrieve capabilities and latency, capacity).

The possession of a link to access pixel data shall not be sufficient for the SCP to commit to storage. A copy of the entire pixel data is required.

### Note

This situation may arise in the context of a JPIP Referenced Pixel Data Transfer Syntax.

Once the SCP has accepted the commitment to store the SOP Instances, the SCU may decide that it is appropriate to delete its copies of the SOP Instances. These types of policies are outside the scope of this Standard, however, the SCU is required to document these policies in its Conformance Statement.

### J.1.2 Models Overview

The request for storage commitment can be accomplished using the Push Model.

The Push model expects an SCU to transmit SOP Instances to an SCP using an appropriate mechanism outside the scope of this Service Class. Storage commitment is then initiated by transmitting a Storage Commitment Request containing references to a set of one or more SOP Instances. Success or failure of storage commitment is subsequently indicated via a notification from the SCP to the SCU.

### Note

1. A Pull Model was defined in earlier versions, but has been retired. See PS 3.4-2001.

2. As indicated, the mechanisms used to transfer SOP Instances from an SCU to an SCP are outside the scope of this Service Class. However, typical mechanisms are found in the Storage Service Class, the Query/Retrieve Service Class, or Media Exchange.

## J.2 Conformance Overview

The application-level services addressed by this Service Class are specified via the Storage Commitment Push Model SOP Class.:

An SCP implementation of the Storage Commitment Service Class shall support the Storage Commitment Push Model SOP Class.

The SOP Class specifies Attributes, operations, notifications, and behavior applicable to the SOP Class. The conformance requirements shall be specified in terms of the Service Class Provider (SCP) and the Service Class User (SCU).

The Storage Commitment Service Class uses the Storage Commitment IOD as defined in PS3.3 and the N-ACTION and N-EVENT-REPORT DIMSE Services specified in PS3.7.

### J.2.1 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation rules as specified in PS3.7 shall be used to negotiate the supported SOP Classes.

Support for the SCP/SCU role selection negotiation is mandatory. The SOP Class Extended Negotiation shall not be supported.

An SCP implementation of the Storage Commitment Service Class shall support the Storage Commitment Push Model SOP Class.

## J.3 Storage Commitment Push Model SOP Class

The Storage Commitment Push Model SOP Class is intended for those Application Entities requiring storage commitment where the SCU determines the time at which the SOP Instances are transmitted. The SCU transmits the SOP Instances to the SCP using an appropriate mechanism. The request for storage commitment is transmitted to the SCP together with a list of references to one or more SOP Instances. Success or failure of storage commitment is subsequently indicated by a notification from the SCP to the SCU.

### J.3.1 DIMSE Service Group

The DIMSE-N Services applicable to the Storage Commitment Push Model SOP Class are shown in Table J.3.1-1.

Table J.3.1-1. IOD DIMSE Services

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-EVENT-REPORT | M/M
N-ACTION | M/M

The DIMSE-N Services and Protocol are specified in PS3.7.

### J.3.2 Operations

The DICOM AEs that claim conformance to this SOP Class as an SCU shall invoke the N-ACTION operation. The DICOM AEs that claim conformance to this SOP Class as an SCP shall support the N-ACTION operation.

#### J.3.2.1 Storage Commitment Request

The Storage Commitment Request operation allows an SCU to request an SCP to commit to the safekeeping of a set of SOP Instances. This operation shall be invoked through the N-ACTION primitive.

##### J.3.2.1.1 Action Information

The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Action Types and Action Information as specified in Table J.3-1.

Table J.3-1. Storage Commitment Request - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Request Storage Commitment | 1 | Transaction UID | (0008,1195) | 1/1
|  | Storage Media File-Set ID | (0088,0130) | 3/3 See Section J.3.2.1.1.1.
|  | Storage Media File-Set UID | (0088,0140) | 3/3 See Section J.3.2.1.1.1.
|  | Referenced SOP Sequence | (0008,1199) | 1/1
|  | >Referenced SOP Class UID | (0008,1150) | 1/1
|  | >Referenced SOP Instance UID | (0008,1155) | 1/1 See Section J.3.2.1.1.3.
|  | >Storage Media File-Set ID | (0088,0130) | 3/3 See Section J.3.2.1.1.1.
|  | >Storage Media File-Set UID | (0088,0140) | 3/3 See Section J.3.2.1.1.1.

###### J.3.2.1.1.1 Storage Media File Set ID Attributes

If present, the Storage Media File-Set ID (0088,0130) and Storage Media File-Set UID (0088,0140) shall appear either outside the Referenced SOP Sequence (0008,1199), or within one or more Items within that sequence, but not both. If they appear outside of the sequence, then all of the SOP Instances within the sequence shall be retrievable from the specified Storage Media File-Set. If they appear within an Item of that sequence, then the SOP Instance referenced to by that Item shall be retrievable from the specified Storage Media File-Set.

###### J.3.2.1.1.2 Referenced Performed Procedure Step Sequence Attribute (Retired)

Referenced Performed Procedure Step Sequence (0008,1111) was included in earlier versions, but its use here has been retired. See PS 3.4-2001, in which the Attribute was formerly known as Referenced Study Component Sequence.

### Note

This section formerly specified a means of referencing a Study Component that has been completed and semantics that the list of images in the commitment request represented a complete set. This section has been retired since the Modality Performed Procedure Step SOP Classes provide the same facility in a more appropriate service.

###### J.3.2.1.1.3 SOP Instance Reference

A SOP Instance may be referenced only once within the Referenced SOP Sequence (0008,1199).

##### J.3.2.1.2 Service Class User Behavior

The SCU shall use the N-ACTION primitive to request the SCP the safekeeping of a set of SOP Instances. The SOP Instances are referenced in the Action Information as specified in Table J.3-1. The Action Type ID shall be set to 1 specifying the request for storage commitment.

The SCU shall supply the Transaction UID Attribute (0008,1195) to uniquely identify each Storage Commitment Request. The value of the Transaction UID Attribute will be included by the SCP in the Storage Commitment Result (see Section J.3.3.1). Use of the Transaction UID Attribute allows the SCU to match requests and results that may occur over the same or different Associations.

The N-ACTION primitive shall contain the well-known Storage Commitment Push Model SOP Instance UID (defined in Section J.3.5) in its Requested SOP Instance UID parameter.

### Note

In the usage described here, there is no explicit creation of a SOP Instance upon which an N-ACTION primitive may operate. Instead, the N-ACTION primitive operates upon a constant well-known SOP Instance. This SOP Instance is conceptually created during start up of each Storage Commitment Service Class SCP Application.

Upon receipt of a successful N-ACTION Response Status Code from the SCP, the SCU now knows that the SCP has received the N-ACTION request. Upon receipt of any other N-ACTION Response Status Code from the SCP, the SCU now knows that the SCP will not process the request and therefore will not commit to the storage of the SOP Instances referenced by the Storage Commitment Request. The actions taken by the SCU upon receiving the status is beyond the scope of this Standard. Upon receipt of a failure status, the Transaction UID is no longer active and shall not be reused for other transactions.

At any time after receipt of the N-ACTION-Response, the SCU may release the association on which it sent the N-ACTION-Request.

### Note

1. Failure of storage commitment will be signaled via the N-EVENT-REPORT primitive.

2. In situations where the SOP Instance(s) are transferred via Media Interchange, the Storage Commitment Request may fail because the piece of Media containing the referenced SOP Instance(s) may not yet have been read. Attributes (0088,0130) File-Set ID and (0088,0140) File-Set UID may or may not be present in the case of Media Interchange. They may be provided to facilitate identification of the media containing the transferred SOP Instance(s) by the Storage Commitment SCP.

##### J.3.2.1.3 Service Class Provider Behavior

Upon receipt of the N-ACTION request, the SCP shall return, via the N-ACTION response primitive, the N-ACTION Response Status Code applicable to the associated request. A success status conveys that the SCP has successfully received the request. A failure status conveys that the SCP is not processing the request.

### Note

1. Failure of storage commitment will be signaled via the N-EVENT-REPORT primitive.

2. When a Storage Commitment Request is received by an SCP it may immediately assess the list of references for which Storage Commitment is requested and return an N-EVENT-REPORT. In situations where the SOP Instance(s) are transferred via Media Interchange, the N-EVENT-REPORT may fail because the piece of Media containing the referenced SOP Instance(s) may not yet have been read. Attributes (0088,0130) File-Set ID and (0088,0140) File-Set UID may or may not be present in the case of Media Interchange. They may be used to facilitate identification of the media containing the transferred SOP Instance(s) by the Storage Commitment SCP.

##### J.3.2.1.4 Status Codes

No Service Class specific status values are defined for the N-ACTION Service. See PS3.7 for general response status codes.

### J.3.3 Notifications

The DICOM AEs that claim conformance to this SOP Class as an SCP shall invoke the N-EVENT-REPORT request. The DICOM AEs that claim conformance to this SOP Class as an SCU shall be capable of receiving the N-EVENT-REPORT request.

#### J.3.3.1 Storage Commitment Result

The Storage Commitment Result notification allows an SCP to inform the SCU whether or not it has accepted storage commitment responsibility for the SOP Instances referenced by a Storage Commitment Request. This notification is also used to convey error information (i.e., storage commitment could not be achieved for one or more of the referenced SOP Instances). This notification shall be invoked through the N-EVENT-REPORT primitive.

##### J.3.3.1.1 Event Information

The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Event Types and Event Information as specified in Table J.3-2.

Table J.3-2. Storage Commitment Result - Event Information

Event Type Name | Event Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Storage Commitment Request Successful | 1 | Transaction UID | (0008,1195) | -/1
|  | Retrieve AE Title | (0008,0054) | -/3 See Section J.3.3.1.1.1.
|  | Storage Media File-Set ID | (0088,0130) | -/3 See Section J.3.3.1.1.2.
|  | Storage Media File-Set UID | (0088,0140) | -/3 See Section J.3.3.1.1.2.
|  | Referenced SOP Sequence | (0008,1199) | -/1
|  | >Referenced SOP Class UID | (0008,1150) | -/1
|  | >Referenced SOP Instance UID | (0008,1155) | -/1
|  | >Retrieve AE Title | (0008,0054) | -/3 See Section J.3.3.1.1.1.
|  | >Storage Media File-Set ID | (0088,0130) | -/3 See Section J.3.3.1.1.2.
|  | >Storage Media File-Set UID | (0088,0140) | -/3 See Section J.3.3.1.1.2.
Storage Commitment Request Complete - Failures Exist | 2 | Transaction UID | (0008,1195) | -/1
|  | Retrieve AE Title | (0008,0054) | -/3 See Section J.3.3.1.1.1.
|  | Storage Media File-Set ID | (0088,0130) | -/3 See Section J.3.3.1.1.2.
|  | Storage Media File-Set UID | (0088,0140) | -/3 See Section J.3.3.1.1.2.
|  | Referenced SOP Sequence | (0008,1199) | -/1C This Attribute shall be provided if storage commitment for one or more SOP Instances has been successful
|  | >Referenced SOP Class UID | (0008,1150) | -/1
|  | >Referenced SOP Instance UID | (0008,1155) | -/1
|  | >Retrieve AE Title | (0008,0054) | -/3 See Section J.3.3.1.1.1.
|  | >Storage Media File-Set ID | (0088,0130) | -/3 See Section J.3.3.1.1.2.
|  | >Storage Media File-Set UID | (0088,0140) | -/3 See Section J.3.3.1.1.2.
|  | Failed SOP Sequence | (0008,1198) | -/1
|  | >Referenced SOP Class UID | (0008,1150) | -/1
|  | >Referenced SOP Instance UID | (0008,1155) | -/1
|  | >Failure Reason | (0008,1197) | -/1

###### J.3.3.1.1.1 Retrieve AE Title Attribute

If present, the Retrieve AE Title (0008,0054) shall appear either outside the Referenced SOP Sequence (0008,1199), or within one or more Items within that sequence, but not both. If they appear outside of the sequence, then all of the SOP Instances within the sequence shall be retrievable from the specified Retrieve AE Title. If they appear within an Item of that sequence, then the SOP Instance referenced to by that Item shall be retrievable from the specified Retrieve AE Title.

###### J.3.3.1.1.2 Storage Media File Set ID Attributes

If present, the Storage Media File-Set ID (0088,0130) and Storage Media File-Set UID (0088,0140) shall appear either outside the Referenced SOP Sequence (0008,1199), or within one or more Items within that sequence, but not both. If they appear outside of the sequence, then all of the SOP Instances within the sequence shall be retrievable from the specified Storage Media File-Set. If they appear within an Item of that sequence, then the SOP Instance referenced to by that Item shall be retrievable from the specified Storage Media File-Set.

##### J.3.3.1.2 Service Class Provider Behavior

If the SCP determines that it has successfully completed storage commitment for all the SOP Instances referenced by a Storage Commitment Request, the SCP shall issue an N-EVENT-REPORT with the Event Type ID set to 1 (storage commitment request successful). This event shall include references to the successfully stored SOP Instances. The SCP shall store the referenced SOP Instances in accordance with Level 2 as defined in the Storage Service Class (i.e., all Attributes, including Private Attributes). The Storage Service Class is defined in PS3.4. After the N-EVENT-REPORT has been sent, the Transaction UID is no longer active and shall not be reused for other transactions.

If it is determined that storage commitment could not be achieved for one or more referenced SOP Instances, the SCP shall issue an N-EVENT-REPORT with the Event Type ID set to 2 (storage commitment request complete - failure exists) conveying that the SCP does not commit to store all SOP Instances. This event shall include references to the failed SOP Instances together with references to those SOP Instances that have been successfully stored. For each failed SOP Instance the reason for failure shall be described by the Failure Reason Attribute. After the N-EVENT-REPORT has been sent, the Transaction UID is no longer active and shall not be reused for other transactions.

The complete set of SOP Instances referenced by the Referenced SOP Sequence (0008,1199) Attribute, in the initiating N-ACTION, shall be present in both Event Types either in the Referenced SOP Sequence (0008,1199) or in the Failed SOP Sequence (0008,1198).

The N-EVENT-REPORT shall include the same Transaction UID Attribute (0008,1195) value as contained in the initiating N-ACTION.

An SCP shall be capable of issuing the N-EVENT-REPORT on a different association than the one on which the N-ACTION operation was performed.

### Note

1. The SCP may attempt to issue the N-EVENT-REPORT on the same Association, but this operation may fail because the SCU is free to release at any time the Association on which it sent the N-ACTION-Request. As DICOM defaults the association requestor to the SCU role, the SCP (i.e., the association requester) negotiates an SCP role using the SCU/SCP role negotiation (see PS3.7).

2. When responding on a different Association, the SCP must use the same AE Title as it used on the original Association, because the DICOM Standard defines a Service between two peer applications, each identified by an AE Title. Thus the SCP should be consistently identified for all Associations in the particular instance of the Storage Commitment Service.

3. The optional Attributes Retrieve AE Title (0008,0054), Storage Media File-Set ID (0088,0130) and Storage Media File-Set UID (0088,0140) within the Event Information allows an SCP to indicate the location where it has stored SOP Instances for safekeeping. For example, the SCP could relay SOP Instances to a third Application Entity using this Service Class, in which case it can use the Retrieve AE Title Attribute to indicate the real location of the data. Another example is if the SCP stores data on media, it can indicate this using the Storage Media File-Set ID and UID Attributes.

##### J.3.3.1.3 Service Class User Behavior

An SCU shall be capable of receiving an N-EVENT-REPORT on a different association than the one on which the N-ACTION operation was performed.

### Note

To receive this N-EVENT-REPORT, the SCU accepts an association where the SCP role is proposed by the Storage Commitment SCP acting as an association requestor.

The SCU shall return, via the N-EVENT-REPORT response primitive, the N-EVENT-REPORT Response Status Code applicable to the associated request. The actions taken by the SCU upon receiving the N-EVENT-REPORT are beyond the scope of this Standard but are stated in its Conformance Statement.

### Note

In the case where the SCP indicates that it cannot achieve storage commitment for some SOP Instances, the SCU might, for example, re-send the failed SOP Instances to the SCP (via the Storage Service Class) and then re-transmit the N-ACTION request. However, this behavior is beyond the scope of this Standard.

##### J.3.3.1.4 Status Codes

No Service Class specific status values are defined for the N-EVENT-REPORT Service. See PS3.7 for general response status codes.

### Note

This Section refers to status codes returned by the N-EVENT-REPORT response primitive. The Failure Reason Attribute returned in the Storage Commitment Result - Event Information (see PS3.3) are described in the Storage Commitment IOD.

### J.3.4 Storage Commitment Push Model SOP Class UID

The Storage Commitment Push Model SOP Class shall be uniquely identified by the Storage Commitment Push Model SOP Class UID, which shall have the value "1.2.840.10008.1.20.1".

### J.3.5 Storage Commitment Push Model Reserved Identification

The well-known UID of the Storage Commitment Push Model SOP Instance shall have the value "1.2.840.10008.1.20.1.1".

### J.3.6 Conformance Requirements

Implementations claiming Standard SOP Class Conformance to the Storage Commitment Push Model SOP Class shall be conformant as described in this Section and shall include within their Conformance Statement information as described in this Section and sub-Sections.

An implementation may claim conformance to this SOP Class as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

#### J.3.6.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for

- the operations and actions that it invokes

- the notifications that it receives.

The mechanisms used by the SCU to transfer SOP Instances to the SCP shall be documented.

##### J.3.6.1.1 Operations

The SCU shall document in the SCU Operations Statement the actions and behavior that cause the SCU to generate an N-ACTION primitive (Storage Commitment Request).

The SCU shall specify the SOP Class UIDs for which it may request storage commitment.

The SCU shall specify the duration of applicability of the Transaction UID. This may be specified as a time limit or a policy that defines the end of a transaction (e.g., how long will the SCU wait for a N-EVENT-REPORT).

The SCU shall specify if it supports the optional Storage Media File-Set ID & UID Attributes in the N-ACTION. If these Attributes are supported, the SCU shall also specify which Storage Media Application Profiles are supported.

The SCU Operations Statement shall be formatted as defined in PS3.2

##### J.3.6.1.2 Notifications.

The SCU shall document in the SCU Notifications Statement the behavior and actions taken by the SCU upon receiving an N-EVENT-REPORT primitive (Storage Commitment Result).

The SCU shall specify the behavior and actions performed when a success status is received (i.e., if and when local SOP Instances copies are deleted).

The SCU shall specify the behavior and actions performed when a failure status is received (i.e., recovery mechanisms, etc.).

The SCU Notifications Statement shall be formatted as defined in PS3.2

#### J.3.6.2 SCP Conformance.

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for

- the operations and actions that it performs

- the notifications that it generates.

##### J.3.6.2.1 Operations

The SCP shall document in the SCP Operations Statement the behavior and actions of the SCP upon receiving the N-ACTION primitive (Storage Commitment Request).

The SCP shall specify parameters indicating the level of storage commitment, such as:

- under what conditions the SCP would delete SOP Instances

- persistence of storage

- capacity

- volatility

- other pertinent information

The SCP shall specify the mechanisms and characteristics of retrieval of stored SOP Instances, such as:

- supported query/retrieve services

- latency

- other pertinent information

The SCP shall specify if it supports the optional Storage Media File-Set ID & UID Attributes in the N-ACTION. If these Attributes are supported, the SCP shall also specify which Storage Media Application Profiles are supported.

The SCP Operations Statement shall be formatted as defined in PS3.2

##### J.3.6.2.2 Notifications

The SCP shall document in the SCP Notifications Statement the behavior and actions that cause the SCP to generate an N-EVENT-REPORT primitive (Storage Commitment Result).

The SCP shall specify if it supports the optional Storage Media File-Set ID & UID Attributes in the N-EVENT-REPORT and describe the policies for how the Media is used. The SCP shall also specify which Storage Media Application Profiles are supported.

The SCP shall specify if it supports the optional Retrieve AE Title (0008,0054) Attribute in the N-EVENT-REPORT and describe the policies for how it is used.

The SCP Notifications Statement shall be formatted as defined in PS3.2

## J.4 Storage Commitment Pull Model SOP Class(Retired)

A Pull Model was defined in earlier versions, but has been retired. See PS 3.4-2001.

## J.5 Storage Commitment Examples (Informative)

Moved to PS3.17

# K Basic Worklist Management Service (Normative)

## K.1 Overview

### K.1.1 Scope

The Basic Worklist Management Service Class defines an application-level class-of-service that facilitates the access to worklists.

A worklist is the structure to present information related to a particular set of tasks. It specifies particular details for each task. The information supports the selection of the task to be performed first, and supports the performance of that task.

### Note

One example is the worklist used to present information about scheduled imaging procedures at an imaging modality and to the operator of that modality. Another example is the worklist presented at a radiological reporting station to indicate which studies have been performed and are waiting to be reported.

This annex defines a service for communicating such worklists. The following are characteristics for this Service Class:

- The worklist has to be queried by the Application Entity (AE) associated with the application on which, or by which, the tasks included in the worklist have to be performed. In this query, a number of search keys can be used, defined for each particular worklist SOP class.

- The worklist consists of worklist items, each item is related to one task. A worklist item contains Attributes from different objects related to the task.

### Note

1. This Service Class is not intended to provide a comprehensive generalized database query mechanism such as SQL. Instead, the Basic Worklist Management Service Class is focused towards basic queries using a small set of common Key Attributes used as Matching Keys or Return Attributes. Basic Worklist Information Models are not hierarchical.

2. Basic Worklist Information Models always consist of one query level, which may consist of one or more entities. There is no distinction between hierarchical and relational use of C-Find in the Basic Worklist Management Service Class.

### K.1.2 Conventions

Key Attributes serve two purposes, they may be used as: Matching Key Attributes and Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

### Note

Matching Keys are typically used in an SQL 'where' clause. Return Keys are typically used in an SQL 'select' clause to convey the Attribute values.

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5.

### K.1.3 Worklist Information Model

In order to serve as a Service Class Provider (SCP) of the Basic Worklist Service Class, a DICOM Application Entity (AE) possesses information about the Attributes of a number of managed worklist entries. This information is organized into Worklist Information Models.

Worklists are implemented against well defined Information Models. A specific SOP Class of the Basic Worklist Service Class consists of an informative Overview, an Information Model Definition and a DIMSE-C Service Group. In this Service Class, the Information Model plays a role similar to an Information Object Definition (IOD) of most other DICOM Service Classes.

### K.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Basic Worklist Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Basic Worklist Service Class are implemented using the DIMSE-C C-FIND service as defined in PS3.7.

Both a baseline and extended behavior are defined for the DIMSE-C C-FIND. Baseline behavior specifies a minimum level of conformance for all implementations to facilitate interoperability. Extended behavior enhances the baseline behavior to provide additional features that may be negotiated independently at Association establishment time.

The following description of the DIMSE-C C-FIND service provides a brief overview of the SCU/SCP semantics.

A C-FIND service conveys the following semantics:

- The SCU requests that the SCP perform a match for the Matching Keys and return values for the Return Keys that have been specified in the Identifier of the request, against the information that the SCP possesses, to the objects specified in the SOP Class.

  ### Note

  In this Annex, the term "Identifier" refers to the Identifier service parameter of the C-FIND service as defined in PS3.7.

- The SCP generates a C-FIND response for each match with an Identifier containing the values of all Matching Key Attributes and all known Return Key Attributes requested. Each response contains one worklist item. All such responses will contain a status of Pending. A status of Pending indicates that the process of matching is not complete.

- When the process of matching is complete a C-FIND response is sent with a status of Success and no Identifier.

- A Refused or Failed response to a C-FIND request indicates that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-CANCEL-FIND request at any time during the processing of the C-FIND service. The SCP will interrupt all matching and return a status of Canceled.

  ### Note

  The SCU needs to be prepared to receive C-FIND responses sent by the SCP until the SCP finally processed the C-CANCEL-FIND request.

## K.2 Worklist Information Model Definition

The Worklist Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

Information Model Definitions for standard SOP Classes of the Worklist Service Class are defined in this Annex. A Worklist Information Model Definition contains:

- an Entity-Relationship Model Definition

- a Key Attributes Definition;

### K.2.1 Entity-Relationship Model Definition

Basic Worklist Information Models consist of a single level, that includes all Matching Key Attributes and all Return Key Attributes, which may be sent from the SCU to the SCP in the request and whose values are expected to be returned from the SCP to the SCU in each of the responses (or worklist items). The Matching Key Attribute values in the request specify the worklist items that are to be returned in the responses. All Key Attributes (the Matching Key Attributes and the Return Key Attributes) in the request determine which Attribute values are returned in the responses for that worklist.

A Worklist Item has a one-to-one relationship with the real-world object defining the root for the Basic Worklist Information Model. In addition the worklist item is related to a number of other objects from the real-world model. Each of these real-world objects is represented by a hierarchy of entities organized in an (internal) Entity-Relationship Model.

### K.2.2 Attributes Definition

Attributes are defined for each entity in the internal Entity-Relationship Model. An Identifier in a C-FIND request shall contain values to be matched against the Attributes of the Entities in a Worklist Information Model. For any worklist request, the set of entities for which Attributes are returned, shall be determined by the set of Matching and Return Key Attributes specified in the Identifier.

#### K.2.2.1 Attribute Types

All Attributes of entities in a Worklist Information Model shall be specified both as a Matching Key Attribute (either required or optional) and as a Return Key Attribute.

##### K.2.2.1.1 Matching Key Attributes

The Matching Key Attributes are Keys, which select worklist items to be included in a requested Worklist.

###### K.2.2.1.1.1 Required Matching Key Attributes

A Basic Worklist Management SCP shall support matching based on values of all Required Matching Key Attributes of the C-FIND request. Multiple entities may match a given value for a Required Key.

If an SCP manages an entity with an unknown Attribute value (i.e., zero length), the unknown value shall fail to match any Matching Key value.

### Note

1. Even though there is no means to perform matching on such entities, they may be queried as a Return Key Attribute using a C-FIND request with a zero length value (universal match) or by a single wild card (wild card match).

2. An SCU may choose to supply any subset of Required Matching Key Attributes.

###### K.2.2.1.1.2 Optional Matching Key Attributes

In the Worklist Information Model, a set of Attributes may be defined as Optional Matching Key Attributes. Optional Matching Key Attributes contained in the Identifier of a C-FIND request may induce two different types of behavior depending on support for matching by the SCP. If the SCP

- does not support matching on the Optional Matching Key Attribute, then the Optional Matching Key Attribute shall be ignored for matching but shall be processed in the same manner as a Return Key Attribute.

- supports matching of the Optional Matching Key Attribute, then the Optional Matching Key Attribute shall be processed in the same manner as a Required Matching Key.

### Note

1. The Conformance Statement of the SCP lists the Optional Matching Key Attributes that are supported for matching.

2. An SCU can not expect the SCP to support a match on an Optional Matching Key.

##### K.2.2.1.2 Return Key Attributes

The values of Return Key Attributes to be retrieved with the Worklist are specified with zero-length (universal matching) in the C-FIND request. SCPs shall support Return Key Attributes defined by a Worklist Information Model according to the Data Element Type (1, 1C, 2, 2C, 3) as defined in PS3.5.

Every Matching Key Attribute shall also be considered as a Return Key Attribute. Therefore the C-FIND response shall contain in addition to the values of the requested Return Key Attributes the values of the requested Matching Key Attributes.

### Note

1. The Conformance Statement of the SCP lists the Return Key Attributes of Type 3, which are supported.

2. An SCU may choose to supply any subset of Return Key Attributes.

3. An SCU can not expect to receive any Type 3 Return Key Attributes.

4. Return Key Attributes with VR of SQ may be specified either with zero-length or with the zero-length item in the sequence.

#### K.2.2.2 Attribute Matching

The following types of matching, which are defined by the Query/Retrieve Service Class in Annex C may be performed on Matching Key Attributes in the Basic Worklist Service Class. Different Matching Key Attributes may be subject for different matching types. The Worklist Information Model defines the type of matching for each Required Matching Key Attribute. The Conformance Statement of the SCP shall define the type of matching for each Optional Matching Key Attribute. The types of matching are:

- Single Value Matching

- List of UID Matching

- Wild Card Matching

- Range Matching

- Sequence Matching

The following type of matching, which is defined by the Query/Retrieve Service Class in Annex C of this Part shall be performed on Return Key Attributes in the Basic Worklist Service Class.

- Universal Matching

See Section C.2.2.2 and subsections for specific rules governing of Matching Key Attribute encoding for and performing of different types of matching.

The Specific Character Set (0008,0005) Attribute and/or the Timezone Offset From UTC (0008,0201) Attribute may be present in the Identifier but are never matched, i.e., they are not considered Matching Key Attributes. See Section C.2.2.2 for details.

Single value matching of Attributes with a VR of PN may be affected by extended negotiation of fuzzy semantic matching of person names.

#### K.2.2.3 Matching Multiple Values

When matching an Attribute that has a value multiplicity of greater than one, if any of the values match, then all values shall be returned.

## K.3 Worklist Information Model

Each Worklist Information Model is associated with one SOP Class. The following Worklist Information Model is defined:

- Modality Worklist Information Model

## K.4 DIMSE-C Service Group

One DIMSE-C Service is used in the construction of SOP Classes of the Basic Worklist Management Service Class. The following DIMSE-C operation is used.

- C-FIND

### K.4.1 C-FIND Operation

SCPs of some SOP Classes of the Basic Worklist Management Service Class are capable of processing queries using the C-FIND operation as described in PS3.7. The C-FIND operation is the mechanism by which queries are performed. Matches against the keys present in the Identifier are returned in C-FIND responses.

#### K.4.1.1 C-FIND Service Parameters

##### K.4.1.1.1 SOP Class UID

The SOP Class UID identifies the Worklist Information Model against which the C-FIND 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-FIND operation.

##### K.4.1.1.2 Priority

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

##### K.4.1.1.3 Identifier

Both the C-FIND request and response contain an Identifier encoded as a Data Set (see PS3.5).

###### K.4.1.1.3.1 Request Identifier Structure

An Identifier in a C-FIND request shall contain

- Key Attributes values to be matched against the values of Attributes specified in that SOP Class.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Request Identifier. It shall not be included otherwise.

  ### Note

  This means that Specific Character Set (0008,0005) is included if the SCU supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCU.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if Key Attributes of time are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

The Key Attributes and values allowable for the query shall be defined in the SOP Class definition for the corresponding Worklist Information Model.

###### K.4.1.1.3.2 Response Identifier Structure

The C-FIND response shall not contain Attributes that were not in the request or specified in this section.

An Identifier in a C-FIND response shall contain:

- Key Attributes with values corresponding to Key Attributes contained in the Identifier of the request (Key Attributes as defined in Section K.2.2.1.)

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Response Identifier. It shall not be included otherwise. The C-FIND SCP is not required to return responses in the Specific Character Set requested by the SCU if that character set is not supported by the SCP. The SCP may return responses with a different Specific Character Set.

  ### Note

  This means that Specific Character Set (0008,0005) is included if the SCP supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCP.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if any Attributes of time in the Response Identifier are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

- Conditionally, the Attribute HL7 Structured Document Reference Sequence (0040,A390) and its subsidiary Sequence Items. This Attribute shall be included if HL7 Structured Documents are referenced within the Identifier, e.g., in the Pertinent Documents Sequence (0038,0100).

##### K.4.1.1.4 Status

Table K.4-1 defines the status code values that might be returned in a C-FIND response. General status code values and fields related to status code values are defined for C-FIND DIMSE Service in PS3.7.

Table K.4-1. C-FIND Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
| Error: Data Set Does Not Match SOP Class | A900 | (0000,0901) (0000,0902)
| Failed: Unable to process | Cxxx | (0000,0901) (0000,0902)
Cancel | Matching terminated due to Cancel request | FE00 | None
Success | Matching is complete - No final Identifier is supplied. | 0000 | None
Pending | Matches are continuing - Current Match is supplied and any Optional Keys were supported in the same manner as Required Keys. | FF00 | Identifier
| Matches are continuing - Warning that one or more Optional Keys were not supported for existence for this Identifier. | FF01 | Identifier

### Note

Status Codes are returned in DIMSE response messages (see PS3.7). The code values stated in column "Status Codes" are returned in Status Command Element (0000,0900).

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 K.4-1.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table K.4-1 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.

#### K.4.1.2 C-FIND SCU Behavior

All C-FIND SCUs shall be capable of generating query requests that meet the requirements of the "Worklist" Search Method (see Section K.4.1.3.1).

Required Keys, and Optional Keys associated with the Worklist may be contained in the Identifier.

An SCU conveys the following semantics using the C-FIND requests and responses:

- The SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information it possesses of the Worklist specified in the request.

- The SCU shall interpret Pending responses to convey the Attributes of a match of an Entity.

- The SCU shall interpret a response with a status equal to Success, Failed, Refused or Cancel to convey the end of Pending responses.

- The SCU shall interpret a Refused or Failed response to a C-FIND request as an indication that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND. The SCU shall recognize a status of Cancel to indicate that the C-FIND-CANCEL was successful.

#### K.4.1.3 C-FIND SCP Behavior

All C-FIND SCPs shall be capable of processing queries that meet the requirements of the "Worklist" Search (see Section K.4.1.3.1).

An SCP conveys the following semantics using the C-FIND requests and responses:

- The SCP is requested to perform a match of all the keys specified in the Identifier of the request, against the information it possesses. Attribute matching is performed using the key values specified in the Identifier of the C-FIND request as defined in Section K.2.

- The SCP generates a C-FIND response for each match using the "Worklist" Search method. All such responses shall contain an Identifier whose Attributes contain values from a single match. All such responses shall contain a status of Pending.

- When all matches have been sent, the SCP generates a C-FIND response that contains a status of Success. A status of Success shall indicate that a response has been sent for each match known to the SCP.

  ### Note

  1. No ID is contained in a response with a status of Success. For a complete definition, see PS3.7.

  2. When there are no matches, then no responses with a status of Pending are sent, only a single response with a status of Success.

- The SCP shall generate a response with a status of Refused or Failed if it is unable to process the request. A Refused or Failed response shall contain no Identifier.

- If the SCP receives C-FIND-CANCEL indication before it has completed the processing of the matches it shall interrupt the matching process and return a status of Cancel.

##### K.4.1.3.1 "Worklist" Search Method

The following procedure is used to generate matches.

The key match strings contained in the Identifier of the C-FIND request are matched against the values of the Key Attributes for each worklist entity. For each entity for which the Attributes match all of the specified match strings, construct an Identifier. This Identifier shall contain all of the values of the Attributes for this entity that match those in the C-FIND request. Return a response for each such Identifier. If there are no matching keys, then there are no matches, return a response with a status equal to Success and with no Identifier.

## K.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure specified in PS3.7 shall be used to negotiate the supported SOP Classes or Meta SOP Classes.

Support for the SCP/SCU role selection negotiation is optional. The SOP Class Extended Negotiation is optional.

### K.5.1 SOP Class Extended Negotiation

The SOP Class Extended Negotiation allows, at Association establishment, peer DICOM AEs to exchange application Association information defined by specific SOP Classes. This is achieved by defining the Service-class-application-information field. The Service-class-application-information field is used to define support for fuzzy semantic matching of person names.

This negotiation is optional. If absent, the default conditions shall be:

- literal matching of person names with case sensitivity unspecified

- timezone query adjustment unspecified

The Association-requester, for each SOP Class, may use one SOP Class Extended Negotiation Sub-Item. The SOP Class is identified by the corresponding Abstract Syntax Name (as defined by PS3.7) followed by the Service-class-application-information field. This field defines three or more sub-fields:

- reserved; shall always be 1

- reserved; shall always be 1

- literal or fuzzy semantic matching of person names by the Association-requester

- timezone query adjustment by the Association-requester

The meaning of fuzzy semantic person name matching and of timezone query adjustment is as defined in Section K.2.2.2 and Section C.2.2.2.1.

The Association-acceptor shall return a three byte field (three sub-fields) if offered a three byte field (three sub-fields) by the Association-requester. The Association-acceptor may return more than three bytes if offered more than three bytes by the Association-requester. A three byte response to a more than three byte request means that the missing sub-field shall be treated as 0 values.

The Association-acceptor, for each sub-field of the SOP Class Extended Negotiation Sub-Item offered, either accepts the Association-requester proposal by returning the same value (1) or turns down the proposal by returning the value (0)..

If the SOP Class Extended Negotiation Sub-Item is not returned by the Association-acceptor then fuzzy semantic matching of person names is not supported and timezone query adjustment is unspecified over the Association (default condition).

If the SOP Class Extended Negotiation Sub-Items do not exist in the A-ASSOCIATE indication they shall be omitted in the A-ASSOCIATE response.

#### K.5.1.1 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-RQ)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. This field shall be three or four bytes in length.

Table K.5.1-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | reserved | This byte field shall always be 1
2 | reserved | This byte field shall always be 1
3 | Fuzzy semantic matching of person names | This byte field defines whether or not fuzzy semantic person name Attribute is requested by the Association-requester. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - fuzzy semantic matching not requested 1 - fuzzy semantic matching requested
4 | Timezone query adjustment | This byte field defines whether or not the Attribute Timezone Offset From UTC (0008,0201) shall be used to adjust the query meaning for time and datetime fields in queries. 0 - Timezone query adjustment not requested 1 - Timezone query adjustment requested

### Note

This Sub-Item is identical to Extended Negotiation Sub-Items as used by the Query/Retrieve SOP Classes. However, relational queries (Byte 1) are not relevant since the worklist information models are single level, and date-time matching (Byte 2) is already required by the worklist information models and Enhanced Multi-Frame Image Conversion support is not applicable (Byte 5).

#### K.5.1.2 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-AC)

The SOP Class Extended Negotiation Sub-Item is made of a sequence of mandatory fields as defined by PS3.7. This field shall be three or four bytes in length.

Table K.5.1-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | reserved | This byte field shall always be 1
2 | reserved | This byte field shall always be 1
3 | Fuzzy semantic matching of person names | This byte field defines whether or not fuzzy semantic person name Attribute matching will be performed by the Association-acceptor. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - fuzzy semantic matching not performed 1 - fuzzy semantic matching performed
4 | Timezone query adjustment | This byte field defines whether or not the Attribute Timezone Offset From UTC (0008,0201) shall be used to adjust the query meaning for time and datetime fields in queries. 0 - Timezone adjustment of queries not performed 1 - Timezone adjustment of queries performed

## K.6 SOP Class Definitions

### K.6.1 Modality Worklist SOP Class

#### K.6.1.1 Modality Worklist SOP Class Overview

The Modality Worklist SOP class defined within the Basic Worklist Management Service Class defines an application-level class of service that facilitates the communication of information to the imaging modality about Scheduled Procedure Steps, and entities related to the Scheduled Procedure Steps. As will be detailed below, part of the information carried by the worklist mechanism is intended to be used by the imaging modality itself, but much of the information is intended to be presented to the modality operator.

This worklist is structured according to Scheduled Procedure Steps. A procedure step is a unit of service in the context of a requested imaging procedure.

The Modality Worklist SOP class supports the following requirements:

- Verify patient (e.g., download patient demographic information from IS to Modality, to verify that the person to be examined is the intended subject).

- Select a Scheduled Procedure Step from the IS (e.g., download procedure step information from the IS to the Modality). The Modality Worklist SOP Class supports two alternatives for the realization of this requirement, supporting different organization methods of the department:

  - The Modality may obtain the list of Scheduled Procedure Steps from the IS. Display of the list and selection from the list is done at the Modality.

  - The list is displayed and selection is performed on the IS. This implies, that the information is obtained by the Modality just before the Scheduled Procedure Step starts.

- Prepare the performance of a Scheduled Procedure Step.

- Couple DICOM images unambiguously with related information from the IS (e.g., patient demographics, procedure description, ID data structure from the IS, contextual IS information).

- Capture all the Attributes from the IS, that are mandatory to be inserted into the DICOM Image Object

The Modality Worklist SOP Class is not intended to provide access to all IS information and services that may be of interest to a Modality operator or attending physician. Its primary focus is the efficient operation of the image acquisition equipment. DICOM SOP Classes such as the Relevant Patient Information Query SOP Class and non-DICOM Services that fall beyond the scope of the Modality Worklist SOP Class may be needed.

The Modality Worklist SOP Class does not support the transmission of information from the Modality to the information system.

#### K.6.1.2 Modality Worklist Information Model

##### K.6.1.2.1 E/R Model

In response to a given C-FIND request, the SCP might have to send several C-FIND responses, (i.e., one C-FIND response per matching worklist item). Each worklist item focuses on one Scheduled Procedure Step and the related information. The E-R diagram presented in Figure K.6-1 depicts the content of one C-FIND request, that is:

- the matching Scheduled Procedure Step, the Requested Procedure to which the Scheduled Procedure Step contributes, the Imaging Service Request in which the associated Requested Procedure is ordered, any associated Visit, and the Patient who is to be the subject of the Procedure.

Therefore, for a given C-FIND request, a given Scheduled Procedure Step will appear in only one of the resulting C-FIND responses. Obviously, information about the Requested Procedure, Imaging Service Request, Visit and Patient may be mentioned in several of these C-FIND responses.

The Modality Worklist Information Model is represented by the Entity Relationship diagram shown in figure Section K.6 -1.

### Note

The entities appearing in messages related to the Modality Worklist SOP Class are required to comply to the Modality Worklist model. However, DICOM does not define the internal structure of the database.

The entry point of the Modality Worklist is the Scheduled Procedure Step entity.

The Attributes of a Scheduled Procedure Step Worklist can be found in the following Modules in PS3.3.

- Patient Relationship Module

- Patient Identification Module

- Patient Demographic Module

- Patient Medical Module

- Visit Relationship Module

- Visit Identification Module

- Visit Status Module

- Visit Admission Module

- Scheduled Procedure Step Module

- Requested Procedure Module

- Imaging Service Request Module

Figure K.6-1. Modality Worklist Information Model E/R Diagram

##### K.6.1.2.2 Modality Worklist Attributes

Table K.6-1 defines the Attributes of the Modality Worklist Information Model:

Table K.6-1. Attributes for the Modality Worklist Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
Scheduled Procedure Step
Scheduled Procedure Step Sequence | (0040,0100) | R | 1 | The Attributes of the Scheduled Procedure Step shall only be retrieved with Sequence Matching. The Scheduled Procedure Step Sequence shall contain only a single Item.
>Scheduled Station AE Title | (0040,0001) | R | 1 | Scheduled Station AE Title shall be retrieved with Single Value Matching only.
>Scheduled Procedure Step Start Date | (0040,0002) | R | 1 | Scheduled Step Start Date shall be retrieved with Single Value Matching or Range Matching. See remark under Scheduled Procedure Step Start Time (0040,0003).
>Scheduled Procedure Step Start Time | (0040,0003) | R | 1 | Scheduled Step Start Time shall be retrieved with Single Value Matching or Range Matching. Scheduled Step Start Date and Scheduled Step Start Time are subject to Range Matching. If both keys are specified for Range Matching, e.g., the date range July 5 to July 7 and the time range 10am to 6pm specifies the time period starting on July 5, 10am until July 7, 6pm. ### Note If the Information System does not provide scheduling for individual Procedure Steps, it may use the closest scheduling information it possesses (e.g., Procedures are subject to scheduling instead of Procedure Steps).
>Modality | (0008,0060) | R | 1 | The Modality shall be retrieved with Single Value Matching.
>Scheduled Performing Physician's Name | (0040,0006) | R | 2 | Scheduled Performing Physician's Name shall be retrieved with Single Value Matching or Wild Card Matching.
>Scheduled Procedure Step Description | (0040,0007) | O | 1C | Either the Scheduled Procedure Step Description (0040,0007) or the Scheduled Protocol Code Sequence (0040,0008) or both shall be supported by the SCP.
>Scheduled Station Name | (0040,0010) | O | 2 |
>Scheduled Procedure Step Location | (0040,0011) | O | 2 |
>Referenced Defined Protocol Sequence | (0018,990C) | O | 3 |
>>Referenced SOP Class UID | (0008,1150) | O | 1 |
>>Referenced SOP Instance UID | (0008,1155) | O | 1 |
>Referenced Performed Protocol Sequence | (0018,990D) | O | 3 |
>>Referenced SOP Class UID | (0008,1150) | O | 1 |
>>Referenced SOP Instance UID | (0008,1155) | O | 1 |
>Scheduled Protocol Code Sequence | (0040,0008) | O | 1C | Either the Scheduled Procedure Step Description (0040,0007) or the Scheduled Protocol Code Sequence (0040,0008) or both shall be supported by the SCP. The Scheduled Protocol Code Sequence contains one or more Items.
>>Code Value | (0008,0100) | O | 1 |
>>Coding Scheme Version | (0008,0103) | O | 3 |
>>Coding Scheme Designator | (0008,0102) | O | 1 |
>>Code Meaning | (0008,0104) | O | 3 |
>>Protocol Context Sequence | (0040,0440) | - | 3 | The Protocol Context Sequence and its Items shall not be used for matching
>>>Value Type | (0040,A040) | - | 1 |
>>>Concept Name Code Sequence | (0040,A043) | - | 1 |
>>>>Code Value | (0008,0100) | - | 1 |
>>>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>>>Coding Scheme Version | (0008,0103) | - | 3 |
>>>>Code Meaning | (0008,0104) | - | 1 |
>>>DateTime | (0040,A120) | - | 1C | Required if Value Type (0040,A040) is DATETIME.
>>>Person Name | (0040,A123) | - | 1C | Required if Value Type (0040,A040) is PNAME.
>>>Text Value | (0040,A160) | - | 1C | Required if Value Type (0040,A040) is TEXT.
>>>Concept Code Sequence | (0040,A168) | - | 1C | Required if Value Type (0040,A040) is CODE.
>>>>Code Value | (0008,0100) | - | 1 |
>>>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>>>Coding Scheme Version | (0008,0103) | - | 3 |
>>>>Code Meaning | (0008,0104) | - | 1 |
>>>Numeric Value | (0040,A30A) | - | 1C | Required if Value Type (0040,A040) is NUMERIC.
>>>Measurement Units Code Sequence | (0040,08EA) | - | 1C | Required if Value Type (0040,A040) is NUMERIC.
>>>>Code Value | (0008,0100) | - | 1 |
>>>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>>>Coding Scheme Version | (0008,0103) | - | 3 |
>>>>Code Meaning | (0008,0104) | - | 1 |
>>>All other Attributes of the Protocol Context Sequence |  | - | 3 |
>Pre-Medication | (0040,0012) | O | 2C | Required if Pre-Medication is to be applied to that Scheduled Procedure Step.
>Scheduled Procedure Step ID | (0040,0009) | O | 1 |
>Requested Contrast Agent | (0032,1070) | O | 2C | Required if Contrast Media is to be applied to that Scheduled Procedure Step.
>Scheduled Procedure Step Status | (0040,0020) | O | 3 |
>All other Attributes of the Scheduled Procedure Step Sequence |  | O | 3 |
Scheduled Specimen Sequence | (0040,0500) | O | 3 | One or more Items may be returned in this Sequence.
>Container Identifier | (0040,0512) | O | 1 |
>Container Type Code Sequence | (0040,0518) | - | 2 | Zero or one Item shall be returned in this Sequence.
>>Code Value | (0008,0100) | - | 1 |
>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>Coding Scheme Version | (0008,0103) | - | 3 |
>>Code Meaning | (0008,0104) | - | 1 |
>Specimen Description Sequence | (0040,0560) | O | 1 | One or more Items shall be returned in this Sequence.
>>Specimen Identifier | (0040,0551) | O | 1 |
>>Specimen UID | (0040,0554) | O | 1 |
>>All other Attributes of the Specimen Description Sequence |  | O | 3 | Specimen Preparation Sequence (0040,0610), if present, describes preparation steps already performed, not scheduled procedure steps
>All other Attributes of the Scheduled Specimen Sequence |  | O | 3 |
Requested Procedure
Requested Procedure ID | (0040,1001) | O | 1 |
Requested Procedure Description | (0032,1060) | O | 1C | The Requested Procedure Description (0032,1060) or the Requested Procedure Code Sequence (0032,1064) or both shall be supported by the SCP.
Requested Procedure Code Sequence | (0032,1064) | O | 1C | The Requested Procedure Description (0032,1060) or the Requested Procedure Code Sequence (0032,1064) or both shall be supported by the SCP. The Requested Procedure Code Sequence shall contain only a single Item.
>Code Value | (0008,0100) | O | 1 |
>Coding Scheme Designator | (0008,0102) | O | 1 |
>Coding Scheme Version | (0008,0103) | O | 3 |
>Code Meaning | (0008,0104) | O | 3 |
Study Instance UID | (0020,000D) | O | 1 |
Study Date | (0008,0020) | O | 3 | See note 5.
Study Time | (0008,0030) | O | 3 | See note 5.
Referenced Study Sequence | (0008,1110) | O | 2 |
>Referenced SOP Class UID | (0008,1150) | O | 1 |
>Referenced SOP Instance UID | (0008,1155) | O | 1 |
Requested Procedure Priority | (0040,1003) | O | 2 |
Patient Transport Arrangements | (0040,1004) | O | 2 |
All other Attributes of the Requested Procedure Module |  | O | 3 |
Imaging Service Request
Accession Number | (0008,0050) | O | 2 |
Issuer of Accession Number Sequence | (0008,0051) | O | 3 |
Requesting Physician | (0032,1032) | O | 2 |
Referring Physician's Name | (0008,0090) | O | 2 |
All other Attributes of the Imaging Service Request Module |  | O | 3 |
Visit Identification
Admission ID | (0038,0010) | O | 2 |
Issuer of Admission ID Sequence | (0038,0014) | O | 3 |
All other Attributes of the Visit Identification Module |  | O | 3 |
Visit Status
Current Patient Location | (0038,0300) | O | 2 |
All other Attributes of the Visit Status Module |  | O | 3 |
Visit Relationship
Referenced Patient Sequence | (0008,1120) | O | 2 |
>Referenced SOP Class UID | (0008,1150) | O | 1 |
>Referenced SOP Instance UID | (0008,1155) | O | 1 |
All other Attributes of the Visit Relationship Module except those explicitly included in this table (see Note 3) |  | O | 3 |
Visit Admission
All Attributes from the Visit Admission Module |  | O | 3 |
Patient Relationship
All Attributes from the Patient Relationship Module except those explicitly included in this table (see Note 3) |  | O | 3 |
Patient Identification
Patient's Name | (0010,0010) | R | 1 | Patient Name shall be retrieved with Single Value Matching or Wild Card Matching.
Patient ID | (0010,0020) | R | 1 | Patient ID shall be retrieved with Single Value Matching.
Issuer of Patient ID | (0010,0021) | O | 3 |
Issuer of Patient ID Qualifiers Sequence | (0010,0024) | O | 3 |
Other Patient IDs Sequence | (0010,1002) | O | 3 |
All other Attributes of the Patient Identification Module |  | O | 3 |
Patient Demographic
Patient's Birth Date | (0010,0030) | O | 2 |
Patient's Sex | (0010,0040) | O | 2 |
Patient's Primary Language Code Sequence | (0010,0101) | O | 3 | The languages that can be used to communicate with the patient. If returned, the Patient's Primary Language Code Sequence shall contain one or more Items. The items are ordered by preference (most preferred language to least preferred language).
>Code Value | (0008,0100) | O | 1 |
>Coding Scheme Designator | (0008,0102) | O | 1 |
>Code Meaning | (0008,0104) | - | 1 | Code Meaning shall not be used as Matching Key.
>Patient's Primary Language Modifier Code Sequence | (0010,0102) | O | 3 | A modifier for a Patient's Primary Language. Can be used to specify a national language variant. If returned, the Patient's Primary Language Modifier Code Sequence shall contain only a single Item.
>>Code Value | (0008,0100) | O | 1 |
>>Coding Scheme Designator | (0008,0102) | O | 1 |
>>Code Meaning | (0008,0104) | - | 1 | Code Meaning shall not be used as Matching Key.
Patient's Weight | (0010,1030) | O | 2 |
Patient's Size | (0010,1020) | O | 3 |
Confidentiality constraint on patient data | (0040,3001) | O | 2 |
All other Attributes of the Patient Demographic Module |  | O | 3 |
Patient Medical
Patient State | (0038,0500) | O | 2 |
Pregnancy Status | (0010,21C0) | O | 2 |
Medical Alerts | (0010,2000) | O | 2 |
Allergies | (0010,2110) | O | 2 |
Special Needs | (0038,0050) | O | 2 |
Pertinent Documents Sequence | (0038,0100) | O | 3 | Pertinent Documents Sequence shall be retrieved with Universal Matching only
>Referenced SOP Class UID | (0008,1150) | - | 1 |
>Referenced SOP Instance UID | (0008,1155) | - | 1 |
>Purpose of Reference Code Sequence | (0040,A170) | - | 2 |
>>Code Value | (0008,0100) | - | 1 |
>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>Code Meaning | (0008,0104) | - | 1 |
>Document Title | (0042,0010) | - | 2 |
All other Attributes of the Patient Medical Module |  | O | 3 |

### Note

1. Just like Series and Image Entities specified in the Query/Retrieve Service Class either an SCU or an SCP may support optional Matching Key Attributes and/or Type 3 Return Key Attributes that are not included in the Worklist Information Model (i.e., standard or private Attributes). This is considered a Standard Extended SOP Class (see PS3.2).

2. Each Module contains a Comment Attribute. This may be used to transmit non-structured information, which may be displayed to the operator of the Modality.

3. The reason for this exclusion is to assure that the Attributes that may be present in multiple Modules are included only once with the meaning pertaining to only one Module (for example, Referenced Study Sequence (0008,1110) shall be included once with the meaning as defined in the Requested Procedure Module).

4. The use of Specific Character Set is discussed in section Section K.4.1.1.3.1 and Section K.4.1.1.3.2.

5. The values of Study Date (0008,0020) and Study Time (0008,0030) may be provided in order to achieve consistency of Study level Attributes in composite instances generated in multiple performed procedure steps on different devices, and the worklist values may be updated by the SCP based on information received from Modality Performed Procedure Steps or by examining the composite instances generated.

The Attributes in Table K.6-1a are not part of the Worklist Information Model; their inclusion in the C-FIND request and response identifier are governed by rules in sections Section K.4.1.1.3.1 and Section K.4.1.1.3.2, respectively.

Table K.6-1a. Attributes for the Modality Worklist C-FIND Identifier

Attribute Name | Tag | Request Identifier | Response Identifier | Remark Type
--- | --- | --- | --- | ---
Specific Character Set | (0008,0005) | 1C | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section K.4.1.1.3
Timezone Offset From UTC | (0008,0201) | 1C | 1C | This Attribute is required if times are to be interpreted explicitly in the designated local timezone. See Section C.2.2.2 and Section K.4.1.1.3
HL7 Structured Document Reference Sequence | (0040,A390) | - | 1C | One or more Items may be included in this sequence. Required if HL7 Structured Documents are referenced within the Identifier. See Section K.4.1.1.3
>Referenced SOP Class UID | (0008,1150) | - | 1 |
>Referenced SOP Instance UID | (0008,1155) | - | 1 |
>HL7 Instance Identifier | (0040,E001) | - | 1 |
>Retrieve URI | (0040,E010) | - | 3 |

#### K.6.1.3 Conformance Requirements

An implementation may conform to the Modality Worklist SOP Class as an SCU or an SCP. The Conformance Statement shall be in the format defined in PS3.2.

##### K.6.1.3.1 SCU Conformance

An implementation that conforms to the Modality Worklist SOP Class shall support queries against the Worklist Information Model described in Section K.6.1.2 of this Annex using the baseline C-FIND SCU Behavior described in Section K.4.1.2 of this Part.

An implementation that conforms to the Modality Worklist SOP Class as an SCU shall state in its Conformance Statement whether it requests matching on Optional Matching Key Attributes. If it requests Type 3 Return Key Attributes, then it shall list these Optional Return Key Attributes. It shall identify any Templates it supports for the Protocol Context Sequence.

An implementation that conforms to the Modality Worklist SOP Class as an SCU shall state in its Conformance Statement whether or not it supports extended negotiation of fuzzy semantic matching of person names.

An implementation that conforms to the Modality Worklist SOP Class as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when encoding queries and interpreting responses.

##### K.6.1.3.2 SCP Conformance

An implementation that conforms to the Modality Worklist SOP Class shall support queries against the Worklist Information Model described in Section K.6.1.2 of this Annex using the C-FIND SCP Behavior described in Section K.4.1.3 of this Part.

An implementation that conforms to the Modality Worklist SOP Class as an SCP shall state in its Conformance Statement whether it supports matching on Optional Matching Key Attributes. If it supports Type 3 Return Key Attributes, then it shall list the Optional Return Key Attributes that it supports. It shall identify any Templates it supports for the Protocol Context Sequence.

An implementation that conforms to the Modality Worklist SOP Class as an SCP shall state in its Conformance Statement whether it supports case-insensitive matching for PN VR Attributes and list Attributes for which this applies.

An implementation that conforms to the Modality Worklist SOP Class as an SCP shall state in its Conformance Statement whether or not it supports extended negotiation of fuzzy semantic matching of person names. If fuzzy semantic matching of person names is supported, then the mechanism for fuzzy semantic matching shall be specified.

An implementation that conforms to the Modality Worklist SOP Class as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when interpreting queries, performing matching and encoding responses.

#### K.6.1.4 SOP Class

The Modality Worklist SOP Class in the Basic Worklist Service Class identifies the Modality Worklist Information Model, and the DIMSE-C operations supported. The following Standard SOP Class is identified:

Table K.6.1.4-1. Modality Worklist SOP Class

SOP Class Name | SOP Class UID
--- | ---
Modality Worklist Information Model - FIND | 1.2.840.10008.5.1.4.31

### K.6.2 General Purpose Worklist SOP Class (Retired)

Retired. See PS 3.4-2011.

## K.7 Examples for the Usage of the Modality Worklist (Informative)

Moved to PS3.17

## K.8 General Purpose Worklist Example (Informative) (Retired)

Retired. See PS 3.17-2011.

# L Queue Management Service Class (Normative)

Retired. See PS 3.4-2004.

# M Handling of Identifying Parameters (Informative)

Retired. See PS3.17.

# N Softcopy Presentation State Storage SOP Classes (Normative)

## N.1 Overview

### N.1.1 Scope

The Softcopy Presentation State Storage SOP Classes extend the functionality of the Storage Service class (defined in Annex B) to add the ability to convey an intended presentation state or record an existing presentation state. The SOP Classes specify the information and behavior that may be used to present (display) images that are referenced from within the SOP Classes.

They include capabilities for specifying:

1. the output grayscale space in P-Values

2. the color output space as PCS-Values

3. grayscale contrast transformations including modality, VOI and presentation LUT

4. mask subtraction for multi-frame grayscale images

5. selection of the area of the image to display and whether to rotate or flip it

6. image and display relative annotations, including graphics, text and overlays

7. the blending of two image sets into a single presentation

The grayscale softcopy presentation state refers to the grayscale image transformations that are to be applied in an explicitly defined manner to convert the stored image pixel data values in a Composite Image Instance to presentation values (P-Values) when an image is displayed on a softcopy device. The P-Values are in a device independent perceptually linear space that is formally defined in PS3.14 Grayscale Standard Display Function.

The color and pseudo-color softcopy presentation states refer to the color image transformations that are to be applied in an explicitly defined manner to convert the stored image pixel data values in a Composite Image Instance to Profile Connection Space values (PCS-Values) when an image is displayed on a softcopy device. The PCS-Values are in a device independent space that is formally defined in the ICC Profiles as CIEXYZ or CIELab values.

The blending presentation states specify two sets of images, an underlying set, and a superimposed set, and the manner in which their pixel values are blended. The underlying set is rendered as grayscale and the superimposed set is rendered as color. The blending is not defined in a pair wise image-by-image or frame-by-frame manner, but rather the manner in which the two sets are combined is left to the discretion of the implementation. Specifically, matters of spatial registration, and any re-sampling and the mechanism of interpolation are not specified.

The Softcopy Presentation State Storage SOP Classes may be used to store a single state per image, or a common state to be shared by multiple selected images. All images to which the Grayscale, Color and Pseudo-Color Presentation States apply must be a part of the same study that the stored state is a part of, and be of a single Composite Image Storage SOP Class.

The two sets of images to which the Blended Presentation State applies may be in separate Studies, Each set shall be within a single study. Each set shall be of a single Composite Image Storage SOP Class.

How an SCU of this SOP Class records or generates this state is beyond the scope of the standard.

### Note

For example, an acquisition device may acquire, reconstruct and store to a workstation or archive images that are later examined by an operator for the purpose of quality assurance or printing. At that time a selected grayscale transformation (such as a window level/width operation) may be applied by the operator, and that activity captured and saved as a Grayscale Softcopy Presentation State Storage SOP Instance to the same workstation or archive, from which it is subsequently available for use by another user. Another workstation may retrieve the state for later use. Alternatively, an automated algorithm may derive a state from analysis of image statistics, body part examined, or other characteristics.

How an SCP of this SOP Class chooses between multiple states that may apply to an image is beyond the scope of this standard, other than to state that a claim of conformance as an SCP of this SOP Class implies that the SCP shall make the presentation state available to the user of the device, and if selected by the user, shall apply all the transformations stored in the state in the manner in which they are defined in the standard.

### Note

1. For example, an acquisition device may automatically store appropriate presentation states for series of images as they are reconstructed that represent adequate defaults. A user or algorithm may subsequently determine a more appropriate presentation state that more effectively displays the contents of an image, or record some annotation related directly to the image, and record that as another presentation state for an image. An application subsequently may display the image by automatically choosing to use the more recently saved or more specific presentation state, or may use the more general default presentation state for all images but notify the user that alternative presentation states are available.

2. Choice of the same presentation state to display a grayscale image on two devices claiming conformance to these SOP Classes implies through the definition of the P-Value space that the displayed image on both devices will be perceptually similar within the limits defined in PS3.14 Grayscale Standard Display Function, regardless of the actual capabilities of the display systems.

3. Choice of the same presentation state to display a color image on two devices claiming conformance to these SOP Classes implies through the definition of the PCS-Value space that the displayed image on both devices will appear similar in color regardless of the actual capabilities of the display systems.

4. DICOM color images without an embedded optional ICC profile have no defined color space, regardless of their representation. The implementation creating a Color Softcopy Presentation State with an ICC profile is explicitly defining a color space in which to interpret that image, even if one was not known at the time that the image was created. Often a well-known color space such as sRGB will be used in the presentation state under such circumstances.

## N.2 Pixel Transformation Sequence

The Softcopy Presentation State Storage SOP Classes support a sequence of transformations that completely define the conversion of a stored image into a displayed image.

The sequence of transformations from stored pixel values into P-Values or PCS-Values is explicitly defined in a conceptual model. The actual sequence implemented may differ but must result in the same appearance. Figure N.2-1 describes this sequence of transformations.

### Note

1. Even though a Composite Image Storage SOP Class may not include some Modules that are part of the described transformations, the Softcopy Presentation State Storage SOP Classes do include them. For example, the CT Image Storage SOP Class includes Rescale Slope and Intercept in the CT Image Module, but does not include the Modality LUT Module, and hence is restricted to the description of linear transformations. A saved presentation state that refers to a CT Image Storage SOP Instance may include a Modality LUT, and hence may apply a non-linear transformation.

2. For the shutter, annotation and spatial transformations, the order in which they are applied relative to the other transformations should not result in a different appearance. The one exception is when a spatial transformation is applied that involves magnification implemented with interpolation. In this case, whether the interpolation is performed before or after the contrast transformations (such as VOI LUT) may result in a slightly different appearance. It is not considered necessary to constrain this sequence more precisely.

The transformations defined in the Softcopy Presentation State Storage SOP Classes replace those that may be defined in the Referenced Image SOP Instance. If a particular transformation is absent in the Softcopy Presentation State Storage SOP Class, then it shall be assumed to be an identity transformation, and any equivalent transformation, if present, in the Referenced Image SOP Instance shall NOT be used instead.

Values of MONOCHROME1 and MONOCHROME2 for Photometric Interpretation (0028,0004) in the Referenced Image SOP Instance shall be ignored, since their effect is defined by the application of the grayscale presentation state transformations.

### Note

These requirements are in order to achieve complete definition of the entire transformation in the Softcopy Presentation State Storage SOP Classes, and not to depend on the content of the Referenced Image SOP Instance, which may change.

The Referenced Image Storage SOP Instance may also contain bit-mapped overlays. The Softcopy Presentation State Storage SOP Classes specify a mechanism for turning these on or off (i.e., displaying them or not).

The presentation related Attributes of the Softcopy Presentation State Storage SOP Classes are immutable. They shall never be modified or updated; only a derived SOP Instance with a new SOP Instance UID may be created to represent a different presentation.

When a Supplemental Palette Color LUT is present in a grayscale Referenced Image Storage SOP Instance:

- The grayscale pipeline in any applicable Grayscale Softcopy Presentation State Storage SOP Instance or Blended Softcopy Presentation State Storage SOP Instance shall be applied only to the range of grayscale stored pixel values, and the presentation state shall not affect the rendering of the indexed color values.

- A Color Softcopy Presentation State Storage SOP Instance shall not be applied.

- A Pseudo-color Softcopy Presentation State Storage SOP Instance may be applied, in which case the Supplemental Palette Color LUT information shall be ignored.

- No mechanism for separately specifying color consistency of the colors in the Supplemental Palette Color LUT is presently defined, only the optional inclusion of an ICC profile in the image instance.

Figure N.2-1. Grayscale and Color Image Transformation Models

### N.2.1 Grayscale Transformations

#### N.2.1.1 Modality LUT

The Modality LUT operation applies only to grayscale values.

The Modality LUT transformation transforms the manufacturer dependent pixel values into pixel values that are meaningful for the modality and are manufacturer independent (e.g., Hounsfield number for CT modalities, Optical Density for film digitizers). These may represent physical units or be dimensionless. The Modality LUT in the Presentation State is modality dependent and is analogous to the same Module in an Image.

### Note

1. In some cases, such as the CT Image Storage SOP Class, the same conceptual step as the Modality LUT is specified in another form, for example as Rescale Slope and Rescale Intercept Attributes in the CT Image Module, though the Modality LUT Module is not part of the CT Image IOD.

2. Image pixel values with a value of Pixel Padding Value (0028,0120) in the referenced image, or within the range specified by Pixel Padding Value (0028,0120) and Pixel Padding Range Limit (0028,0121) (if present in the referenced image) shall be accounted for prior to entry to the Modality LUT stage. See the definition of Pixel Padding Value in PS3.3. Neither Pixel Padding Value (0028,0120) nor Pixel Padding Range Limit (0028,0121) are encoded in the Presentation State Instance.

In the case of a linear transformation, the Modality LUT is described by the Rescale Slope (0028,1053) and Rescale Intercept (0028,1052). In the case of a non-linear transformation, the Modality LUT is described by the Modality LUT Sequence. The rules for application of the Modality LUT are defined in Section C.11.1 “Modality LUT Module” in PS3.3 .

If the Modality LUT or equivalent Attributes are part of both the Image and the Presentation State, then the Presentation State Modality LUT shall be used instead of the Image Modality LUT or equivalent Attributes in the Image. If the Modality LUT is not present in the Presentation State it shall be assumed to be an identity transformation. Any Modality LUT or equivalent Attributes in the Image shall not be used.

#### N.2.1.2 Mask

The Mask operation applies only to grayscale values.

The mask transformation may be applied in the case of multi-frame images for which other frames at a fixed frame position or time interval relative to the current frame may be subtracted from the current frame. Multiple mask frames may be averaged, and sub-pixel shifted before subtraction.

This transformation uses the Mask Module as used in the X-Ray Angiography Image Storage SOP Class, though it may be applied to any Image Storage SOP Instance that contains a multi-frame image.

In the case of X-Ray images, the subtraction is specified to take place in a space logarithmic to X-Ray intensity. If the stored pixel values are not already in such a space, an implementation defined transformation to such a space must be performed prior to subtraction. If a Modality LUT Module is present as well as a Mask Module, then the Modality LUT shall specify a transformation into such a logarithmic space, otherwise it shall not be present (even though a Modality LUT may be present in the referenced image(s), which shall be ignored).

### Note

1. In the case of an XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the image is LOG, then even though a Modality LUT would be present in the image (to map pixel values back to linear to X-Ray intensity), no Modality LUT would be present in the presentation state (i.e., the Modality LUT would be an identity transformation) since log values are required for subtraction. See Section C.8.7.1.1.2 “Pixel Intensity Relationship” in PS3.3 .

2. In the case of an XA or XRF image, if the Pixel Intensity Relationship (0028,1040) is LIN, then no Modality LUT would be present in the image, but a Modality LUT would need to be present in the presentation state since log values are required for subtraction.

3. In the case of an XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the image is DISP, then even though a Modality LUT may or may not be present in the image (to map pixel values back to linear to X-Ray intensity), a different Modality LUT would be present in the presentation state if the creator of the presentation state could create a transformation from DISP pixel values to a logarithmic space for subtraction, or the Modality LUT in the presentation state would be an identity transformation if the DISP pixel values were known to already be log values required for subtraction.

The result will be a signed value with a bit length one longer than the source frames.

When there is no difference between corresponding pixel values, the subtracted image pixel will have a value of 0.

If a pixel in the current frame has a greater value than in the mask frame, then the resulting frame shall have a positive value. If it has a lesser value, then the resulting frame shall have a negative value.

#### N.2.1.3 VOI LUT

The VOI LUT operation applies only to grayscale values.

The value of interest (VOI) LUT transformation transforms the modality pixel values into pixel values that are meaningful for the user or the application.

### Note

Photometric Interpretation (0028,0004) is ignored, since its effect is defined by the application of the grayscale transformations.

The Softcopy VOI LUT Module in the Presentation State is analogous to the VOI LUT Module in an Image.

In the case of a linear transformation, the VOI LUT is described by the Window Center (0028,1050) and Window Width (0028,1051). In the case of a non-linear transformation, the VOI LUT is described by the VOI LUT Sequence. A VOI LUT Function (0028,1056) may be present to define a potentially non-linear interpretation (e.g., SIGMOID) of the values of Window Center (0028,1050) and Window Width (0028,1051). The rules for application of the VOI LUT are defined in Section C.11.8 “Softcopy VOI LUT Module” in PS3.3 .

The VOI LUT may have sections with negative slope.

### Note

In the Basic Print Service Class a VOI LUT may not have negative slope.

If a VOI LUT is part of both the Image and the Presentation State then the Presentation State VOI LUT shall be used instead of the Image VOI LUT. If a VOI LUT (that applies to the Image) is not present in the Presentation State, it shall be assumed to be an identity transformation. Any VOI LUT or equivalent values in the Image shall not be used.

#### N.2.1.4 Presentation LUT

The Presentation LUT operation applies only to grayscale values.

The Presentation LUT transformation transforms the pixel values into P-Values, a device independent perceptually linear space as defined in PS3.14 Grayscale Standard Display Function. It may be an identity function if the output of the VOI LUT transformation is in P-Values.

### Note

If the Presentation LUT and VOI LUT step are identity transformations, and the Mask Module is absent, then the output of the Modality LUT must be, by definition, P-Values.

No output space other than P-Values is defined for the Grayscale Softcopy Presentation State Storage SOP Classes.

In the case of a linear transformation, the Presentation LUT is described by the Presentation LUT Shape (2050,0020). In the case of a non-linear transformation, the Presentation LUT is described by the Presentation LUT Sequence. The rules for application of the Presentation LUT are defined in Section C.11.6 “Softcopy Presentation LUT Module” in PS3.3 .

### Note

1. Since the grayscale transformation pipeline fully defines all transformations applied to the stored pixel values in the referenced image object, the value of Photometric Interpretation (0028,0004) in the referenced image object is ignored and overridden. This implies that either the creator of the presentation state chose a pipeline that reflects the Photometric Interpretation (0028,0004), or chose to ignore or override the Photometric Interpretation, and invert the image relative to what is specified by Photometric Interpretation. If the Modality LUT and VOI LUT do not have a negative slope, one can achieve the effect of inversion of the polarity of an image by choosing Presentation LUT Shape of IDENTITY or INVERSE that displays the minimum pixel value as white rather than black in the case of a Photometric Interpretation of MONOCHROME2, or black rather than white in the case of a Photometric Interpretation of MONOCHROME1. If Presentation LUT Data is sent, then one can invert the value of the entries in the LUT table to achieve inversion of polarity.

2. The minimum P-Value (zero) always commands that the lowest intensity be displayed.

3. No separate Polarity transformation is defined.

A Softcopy Presentation LUT Module is always present in a Presentation State. If a Presentation LUT is present in the Image then the Presentation State Presentation LUT shall be used instead of the Image Presentation LUT.

### N.2.2 Color Transformations

#### N.2.2.1 Profile Connection Space Transformation

The Profile Connection Space Transformation operation applies only to color images, including true color (e.g., RGB) and pseudo-color (e.g., PALETTE COLOR) images, grayscale images for which a Palette Color LUT has been specified in the Presentation State, and the RGB output values of a blending operation.

The ICC Profile is an Input Profile. That is, it describes the color characteristics of a (possibly hypothetical) device that was used to generate the input color values.

The intent is that a rendering device will use this information to achieve color consistency. Typically this will be performed by calibration of the output device to create an ICC Display or Output Profile, the conversion of pixel values using the ICC Input Profile into Profile Connection Space, followed by conversion using the ICC Display or Output Profile into values suitable for rendering on the output device. However, the exact mechanisms used are beyond the scope of the standard to define.

### Note

1. The means of achieving color consistency depends to a large extent on the nature of the material and the intent of the application. The process is more complicated than simply achieving colorimetric accuracy, which is trivial but does not produce satisfactory results. The transformations may take into account such matters as

   - physical factors such as the ambient light of the viewing environment (viewing flare) and the nature of different illuminants

   - psychovisual factors in the observer

   - the preferences of the observer

   - the consistency intent, whether it be to reproduce the colors perceived by an observer of

     - the original scene,

     - the media being reproduced, such as a print or transparency, as viewed under specified conditions.

2. Implementations of color management schemes are typically provided in operating systems, libraries and tool kits, and the exact details are usually beyond the control of the DICOM application developer. Accordingly, it is normally sufficient to define a source of pixel values, and a corresponding ICC Input Profile for the device that captured or generated them.

3. When a color image is rendered on grayscale display, the behavior is not defined. Since the L* value of a CIELab representation of the PCS is not dissimilar to the Barten model used in the GSDF, a reasonable approach would be to interpret it as a P-Value.

An ICC Profile is always present in a Color, Pseudo-Color or Blended Presentation State. If an ICC Profile is present in the Image then the Presentation State ICC Profile shall be used instead of the Image ICC Profile.

#### N.2.2.2 White Point (Informative)

D50 means black body radiation of an object at 5000 degrees K, and includes lots of red, which looks "natural". D65 is bluer, more like "cloudy days", but human eyes are more sensitive to blue. While monitors seem to be in the D50-D100 range, light boxes are about D110 (11000K).

The ICC PCS always uses a white point of D50.

In an ICC Input Profile, the chromaticAdaptationTag encodes a conversion of an XYZ color from the actual illumination source to the PCS illuminant (D50), and may be useful if the actual illumination source is not D50. The actual illumination source may also be defined in the mediaWhitePointTag. However, with a perceptual rendering intent, neither of these tags are required to be used by the color management system, nor do they have any specified rendering behavior (as opposed to their use with absolute and relative colorimetric rendering intents).

It is beyond the scope of DICOM to define a required or suggested white point for rendering, since an appropriate choice depends on a knowledge of the display device or media characteristics and the viewing environment.

### N.2.3 Common Spatial and Annotation Transformations

Figure N.2-2. Common Spatial and Annotation Transformation Model

The common spatial and annotation transformations apply to any device-independent values, whether they be grayscale P-Values or color PCS-Values, for any type of presentation state.

The values with which to render annotations are encoded as device-independent values, either as grayscale P-Values or as color PCS-Values. In the case of PCS-Values, CIELab values are encoded, and defined by reference to a D50 illuminant.

Grayscale presentation states may specify annotations in color for rendering on a color output device.

The mechanism for mapping grayscale P-Values and color PCS-values to the same display is implementation-dependent and not defined by the standard.

#### N.2.3.1 Shutter

The Shutter transformation provides the ability to exclude the perimeter outside a region of an image. A gray level may be specified to replace the area under the shutter.

One form of this transformation uses the Display Shutter Module as used in the X-Ray Angiography Image Storage SOP Class, though it may be applied to any Image Storage SOP Instance, including single frame images.

Another form uses a bit-mapped overlay to indicate arbitrary areas of the image that should be excluded from display by replacement with a specified gray level, as described in the Bitmap Display Shutter Module.

### Note

1. Since annotations follow the shutter operation in the pipeline, annotations in shuttered regions are not obscured and are visible.

2. Any shutter present in the referenced image object is ignored (i.e., not applied).

#### N.2.3.2 Pre-Spatial Transformation Annotation

The Pre-Spatial Transformation Annotation transformation includes the application of bit-mapped overlays as defined in the Overlay Plane Module, and free unformatted text or vector graphics as described in the Graphic Annotation Module that are defined in the image pixel space (as opposed to the displayed area space).

#### N.2.3.3 Spatial Transformation

Some modalities may not deliver the image in the desired rotation and need to specify a rotation into the desired position for presentation. This transformation, specified in the Spatial Transformation Module, includes a rotation of 90, 180, 270 degrees clockwise followed by a horizontal flip (L <--> R). Rotation by an arbitrary angle is not supported.

In addition, selection of a region of the image pixel space to be displayed is specified in the Displayed Area Module. This may have the effect of magnifying (or minifying) that region depending on what physical size the display is instructed to render the selected region. If so, the method of interpolation (or sub-sampling) is implementation dependent.

### Note

In particular the number of displayed pixels may be different from the number of image pixels as a result of:

- minification (e.g., 1 display pixel for 4 image pixels),

- magnification (4 display pixels for each image pixel),

- interpolation (display pixels derived from values other than those in the image pixels), and

- sub-sampling.

#### N.2.3.4 Post-Spatial Transformation Annotation

The Post-Spatial Transformation Annotation transformation includes the application of free unformatted text or vector graphics as described in the Graphic Annotation Module that are defined in the displayed area space (as opposed to the image pixel space).

This implies that the displayed area space is defined as being the image after all Spatial Transformations have been applied.

These annotations are rendered in the displayed space, though they may be anchored to points in either the displayed area or image pixel space.

### N.2.4 Blending Transformations

The grayscale to color blending transformation model applies only to a pair of grayscale values, one of which is first mapped to color and then superimposed upon the other. The resulting values are device independent color PCS-Values. This process is illustrated in Figure N.2-3.

For the purpose of this section, pixels are referred to as stored pixel values and transformations are defined as point operations on these values. However, it is likely that pixels from either or both the superimposed and underlying image sets will have been spatially resampled and hence interpolated or replicated. Such operations do not affect the conceptual pipeline.

Figure N.2-3. Grayscale to Color Blending Transformation Model

#### N.2.4.1 Underlying Image Pixels

The Modality LUT and VOI LUT transformations are applied to the stored pixel values of the underlying image.

The output range of the VOI LUT transformation depends either on the width of the linear window or the range of output values of the LUT defined by the LUT Descriptor. Conceptually, for the purpose of describing the succeeding blending operation, the smallest pixel value from the range is mapped to 0.0 and the largest pixel value is mapped to 1.0 and all intermediate values are linearly mapped to the [0.0..1.0] interval.

#### N.2.4.2 Superimposed Image Pixels

The Modality LUT and VOI LUT transformations are applied to the stored pixel values of the superimposed image.

The full output range of the preceding VOI LUT transformation is implicitly scaled to the entire input range of the Palette Color LUT Transformation.

The output range of the RGB values in the Palette Color LUT Transformation depends on the range of output values of the LUT defined by the LUT Descriptors. Conceptually, for the purpose of describing the succeeding blending operation, a LUT entry of 0 is mapped to 0.0 and the largest LUT entry possible is mapped to 1.0 and all intermediate values are linearly mapped to the [0.0..1.0] interval.

### Note

In practice, the Palette Color LUT output for the superimposed images is encoded in 8 or 16 bits and hence will have a range of 0 to 0xFF or 0xFFFF.

The Palette Color LUT used is that encoded in the Blending Presentation State; any Palette Color LUTs or Supplemental Palette Color LUTs in the image instances are ignored.

#### N.2.4.3 Blending Operation

The inputs to the blending operation are grayscale values from 0.0 to 1.0 from the underlying image (Yu) and RGB values from 0.0 to 1.0 from the superimposed image (RGBs), and an opacity value from 0.0 to 1.0 (A).

The output is a single image containing RGB values (RGBo) blended as:

Ro = Rs * A + Yu * (1-A)

Go = Gs * A + Yu * (1-A)

Bo = Bs * A + Yu * (1-A)

#### N.2.4.4 Conversion to Profile Connection Space

The output of the blending operation is implicitly scaled to the gamut of the hypothetical device described by the ICC Input Profile, resulting in PCS-Values.

### N.2.5 Angiography Grayscale Transformations

The XA/XRF Grayscale Softcopy Presentation State Storage SOP Class supports a sequence of transformations that completely define the conversion of a stored image into a displayed image.

The sequence of transformations from stored pixel values into P-Values is explicitly defined in a conceptual model. The actual sequence implemented may differ but must result in the same appearance. Figure N.2.5-1 describes this sequence of transformations.

Figure N.2.5-1. XA/XRF Grayscale Image Transformation Model

#### N.2.5.1 Mask

The Mask transformation consists of mask subtraction operations as specified by the Attributes of the XA/XRF Presentation State Mask Module and the Attribute Mask Visibility Percentage of the XA/XRF Presentation State Presentation Module.

The mask transformation may be applied in the case of multi-frame images for which other frames at a fixed frame position or time interval relative to the current frame may be subtracted from the current frame. Multiple mask frames may be averaged, and sub-pixel shifted before subtraction. Sub-pixel shift may be specified on a frame-by-frame base. Different pixel-shifts may be applied to more than one region of a contrast frame.

In the case of X-Ray images, the subtraction is specified to take place in a space logarithmic to X-Ray intensity. If the stored pixel values are not in a logarithmic space then a Pixel Intensity Relationship LUT shall be present in the XA/XRF Presentation Mask Module specifying a transformation into such a logarithmic space, otherwise it shall not be present. If a Modality LUT or Pixel Intensity Relationship LUT is present in the referenced image(s) it shall be ignored. The Pixel Intensity Relationship LUT can be specified on a frame-by frame base that can be different for mask and contrast frames.

### Note

1. For images of the X-Ray Angiographic Image Storage SOP Class or X-Ray RF Image Storage SOP Class the XA/XRF Grayscale Softcopy Presentation State allows a Pixel Intensity Relationship LUT to be specified on a frame-by-frame base. This is an enhancement of the image Modality LUT that is only applicable for all frames of an image.

2. In the case of an XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the image is LOG, then even though a Modality LUT would be present in the image (to map pixel values back to linear X-Ray intensity), no Pixel Intensity Relationship LUT would be present in the presentation state for any frame since log values are required for subtraction. See Section C.8.7.1.1.2 “Pixel Intensity Relationship” in PS3.3 .

   In the case of Enhanced XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the frame is LOG, then even though a Pixel Intensity Relationship LUT would be present in the frame (to map pixel values back to linear X-Ray intensity, LUT Function (0028,9474) equals TO_LINEAR), no Pixel Intensity Relationship LUT would be present in the presentation state for that frame since log values are required for subtraction. See Section C.7.6.16.2.13 “Pixel Intensity Relationship LUT Macro” in PS3.3 .

3. In the case of an XA or XRF image if the Pixel Intensity Relationship (0028,1040) in the image is LIN, then no Modality LUT would be present in the image, but a Pixel Intensity Relationship LUT would need to be present (to map pixel values to log values, LUT Function (0028,9474) equals TO_LOG) in the presentation state for all the frames since log values are required for subtraction.

   In the case of an Enhanced XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the frame is LIN, then no Pixel Intensity Relationship LUT for the purpose to map pixel values back to linear X-Ray intensity (LUT Function (0028,9474) equals TO_LINEAR) would be present in the image, but a Pixel Intensity Relationship LUT would need to be present (to map pixel values to log values) in the presentation state for that frame since log values are required for subtraction.

4. In the case of an XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the image is DISP, then even though a Modality LUT may or may not be present in the image (to map pixel values back to linear to X-Ray intensity), a different Pixel Intensity Relationship LUT would be present in the presentation state if the creator of the presentation state could create a transformation from DISP pixel values to a logarithmic space for subtraction, or the Pixel Intensity Relationship LUT in the presentation state would be an identity transformation if the DISP pixel values were known to already be log values required for subtraction.

   In the case of an Enhanced XA or XRF image, if the Pixel Intensity Relationship (0028,1040) in the image is OTHER, then even though a Pixel Intensity Relationship LUT may or may not be present for that frame (to map pixel values back to linear to X-Ray intensity), a different Pixel Intensity Relationship LUT would be present in the presentation state for that frame if the creator of the presentation state could create a transformation from OTHER pixel values to a logarithmic space for subtraction, or the Pixel Intensity Relationship LUT in the presentation state would be an identity transformation if the OTHER pixel values were known to already be log values required for subtraction.

5. Notes 2, 3 and 4 are summarized in Table N.2.5.1-1

Table N.2.5.1-1. Summary of Providing a LUT Function for Subtraction

Pixel Intensity Relationship (0028,1040) Attribute of the referenced SOP Instance | The contents of Pixel Intensity Relationship LUT Sequence (0028,9422) in XA/XRF Presentation State Mask Module
--- | ---
LIN | TO_LOG LUT provided
LOG | absent
DISP or OTHER | TO_LOG LUT provided, may be an identity

#### N.2.5.2 Edge Enhancement

The Edge Enhancement transformation consists of filter operations to enhance the display of the pixel data as specified by the Attribute Display Filter Percentage of the XA/XRF Presentation State Presentation Module.

### N.2.6 Advanced Blending Transformations

The advanced blending transformation model applies to multiple color inputs and uses foreground blending or equal blending.

Several transformations in this IOD affect the input prior to its use in blending as depicted in Figure N.2.6-1.

Grayscale inputs that have no associated Color LUT information shall have the normal grayscale processing and then be converted to a full color image by setting R equals G equals B.

Figure N.2.6-1. Color and Threshold Application

Padding pixels in an input are given an opacity value zero and shall be set to 0 for Red, Green, and Blue.

The foreground method blends two inputs. The first input uses an opacity of Relative Opacity (0070,0403) and the second input uses an opacity of (1 - Relative Opacity (0070,0403) ).

If both the inputs are padding values then the result is padding value.

If one of the values is padding value then the result is the non-padding value.

If both pixels have values then result is Relative Opacity * first value + (1 - Relative Opacity) * second value.

Figure N.2.6-2. Foreground Blending

The Equal blending mode blends two or more inputs where for each pixel location the opacity is calculated as 1.0 divided by the number of non-padding pixels. The result pixel blends all non-padding pixels using the calculated opacity.

If an input pixel value is the padding-value then the Relative Opacity for that input pixel is zero.

If an input pixel value is not the padding value then the Relative Opacity for that pixel is 1 / (number of input pixels that are non-padding pixels).

The result value is the sum for all input pixels of the input pixel value * Relative Opacity.

If all the inputs pixels are padding values then the result is padding value.

Figure N.2.6-3. Equal Blending

## N.3 Behavior of an SCP

In addition to the behavior for the Storage Service Class specified in Section B.2.2 Behavior of an SCP, the following additional requirements are specified for the Softcopy Presentation State Storage SOP Classes:

- a display device acting as an SCP of these SOP Classes shall make all mandatory presentation Attributes available for application to the referenced images at the discretion of the display device user, for all Image Storage SOP Classes defined in the Conformance Statement for which the Softcopy Presentation State Storage SOP Class is supported.

- a display device that is acting as an SCP of these SOP Classes and that supports compound graphics types shall display the graphics described in the Compound Graphic Sequence (0070,0209) and shall not display the Items in the Text Object Sequence (0070,0008) and Graphic Object Sequence (0070,0009) that have the same Compound Graphic Instance ID (0070,0226) value.

### Note

Though it is not required, a display device acting as an SCP of the Blending Softcopy Presentation State Storage SOP Class may support the Spatial Registration Storage SOP Class in order to transform one Frame of Reference into another or to explicitly identify the relationship between members of two sets of images, and may be able to resample underlying and superimposed sets of images that differ from each other in orientation and in-plane and between-plane spatial resolution.

## N.4 Conformance

In addition to the Conformance Statement requirements for the Storage Service Class specified in Section B.4.3, the following additional requirements are specified for the Softcopy Presentation State Storage SOP Classes:

### N.4.1 Conformance Statement for an SCU

The following issues shall be documented in the Conformance Statement of any implementation claiming conformance to a Softcopy Presentation State Storage SOP Class as an SCU:

- For an SCU of a Softcopy Presentation State Storage SOP Class that is creating a SOP Instance of the Class, the manner in which presentation related Attributes are derived from a displayed image, operator intervention or defaults, and how they are included in the IOD.

- For an SCU of a Softcopy Presentation State Storage SOP Class, the Image Storage SOP Classes that are also supported by the SCU and may be referenced by instances of the Softcopy Presentation State Storage SOP Class.

- For an SCU of a Softcopy Presentation State Storage SOP Class whether it supports the Compound Graphic Sequence (0070,0209) and specifies which compound graphic types can be generated, including additional private defined compound graphic types.

### N.4.2 Conformance Statement for an SCP

The following issues shall be documented in the Conformance Statement of any implementation claiming conformance to a Softcopy Presentation State Storage SOP Class as an SCP:

- For an SCP of a Softcopy Presentation State Storage SOP Class that is displaying an image referred to by a SOP Instance of the Class, the manner in which presentation related Attributes are used to influence the display of an image.

- For an SCP of a Softcopy Presentation State Storage SOP Class, the Image Storage SOP Classes that are also supported by the SCP and may be referenced by instances of the Softcopy Presentation State Storage SOP Class.

- For an SCP of a Softcopy Presentation State Storage SOP Class whether it supports the Compound Graphic Sequence (0070,0209) and which compound graphic types can be rendered, including additional private defined compound graphic types.

# O Structured Reporting Storage SOP Classes (Normative)

## O.1 Overview

The Structured Reporting Storage SOP Classes extend the functionality of the Storage Service class (defined in Annex B) to extend the SCP behavior and conformance requirements.

## O.2 Structured Reporting Storage SOP Class SCU and SCP Behavior

### O.2.1 Behavior of an SCU

#### O.2.1.1 CAD SR SOP Classes

Rendering Intent concept modifiers in the Mammography CAD SR, Chest CAD SR and Colon CAD SR objects shall be consistent. Content items marked "For Presentation" shall not be subordinate to content items marked "Not for Presentation" or "Presentation Optional" in the content tree. Similarly, content items marked "Presentation Optional" shall not be subordinate to content items marked "Not for Presentation" in the content tree.

Content items referenced from another SR object instance, such as a prior Mammography CAD SR, Chest CAD SR or Colon CAD SR shall be inserted by-value in the new SR object instance, with appropriate original source observation context. It is necessary to update Rendering Intent, and referenced content item identifiers for by-reference relationships, within content items paraphrased from another source.

#### O.2.1.2 Extensible SR SOP Class

The concept of extensibility implies that a recipient may encounter Content Items, Value Types and Relationship Types that are unanticipated and unsupported and hence potentially unrenderable.

An implementation shall identify in its Conformance Statement which Content Items, Value Types and Relationship Types it creates.

### O.2.2 Behavior of an SCP

An SCP intending to display or otherwise render a Structured Report shall convey its full meaning in an unambiguous manner, except as described in Section O.2.2.2.

### Note

"Full meaning" includes not just the Content Tree (i.e., the Items of the Content Sequence), but all Attributes of the Data Set that are necessary to properly interpret the Structured Report. This includes those Attributes that set the initial Observation Context for the Content Tree, i.e., the patient, procedure, and observer identifiers, and the Completion status and Verification status of the Structured Report.

An Icon Image in an IMAGE reference has no meaning, and is not required to be rendered.

For a device, that is both an SCU and an SCP of these Storage SOP Classes, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for Structured Reporting Storage SOP Classes:

- an SCP of this SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition associated with the SOP Class will be stored and may be accessed.

#### O.2.2.1 CAD SR SOP Classes

The Mammography CAD SR, Chest CAD SR and Colon CAD SR objects contain data not only for presentation to the clinician, but also data solely for use in subsequent mammography CAD analyses.

The SCU provides rendering guidelines via "Rendering Intent" concept modifiers associated with "Individual Impression/Recommendation", "Composite Feature" and "Single Image Finding" content items. The full meaning of the SR is provided if all content items marked "Presentation Required" are rendered down to the first instance of "Not for Presentation" or "Presentation Optional" for each branch of the tree. Use of the SCU's Conformance Statement is recommended if further enhancement of the meaning of the SR can be accomplished by rendering some or all of the data marked "Presentation Optional". Data marked "Not for Presentation" should not be rendered by the SCP; it is embedded in the SR content tree as input to subsequent CAD analysis work steps.

The SCP may further interpret whether or not to render a Single Image Finding that has Rendering Intent "Presentation Optional" by interpreting the value of the CAD Operating Point content item that is subordinate to the Rendering Intent, if present. If the CAD Operating Point content item is not present, then rendering of the Single Image Finding may be based on recommendations in the creator's DICOM Conformance Statement. For further information on the intended use of CAD Operating Point see Section E.4 “CAD Operating Point” in PS3.17 .

#### O.2.2.2 Extensible SR SOP Class

The concept of extensibility implies that a recipient may encounter Content Items, Value Types and Relationship Types that are unanticipated and unsupported and hence potentially unrenderable.

An implementation shall identify in its Conformance Statement which Content Items, Value Types and Relationship Types it supports.

Since it may not be possible to render the entire content in an unambiguous manner because of unrecognized content, an SCP intending to display or otherwise render an Extensible SR SOP Instance

- shall convey a warning in the rendering to indicate that unsupported content is present and that this may affect the meaning of the rendering

- shall identify in its Conformance Statement its behavior when encountering unsupported content

## O.3 Modification of SR Document Content

A device that is an SR Storage SOP Class SCU may modify information in a SOP Instance that it has previously sent or received. When this SOP Instance is modified and sent to an SCP, it shall be assigned a new SOP Instance UID if any of the following conditions are met:

- addition, removal or update of any Attribute within the SR Document General Module or SR Document Content Module;

- modification of the Series Instance UID (0020,000E);

- modification of the Study Instance UID (0020,000D).

## O.4 Conformance

In addition to the Conformance Statement requirements for the Storage Service Class specified in Section B.4.3, the following additional requirements are specified for Structured Reporting Storage SOP Classes:

### O.4.1 Conformance Statement for an SCU

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Structured Reporting Storage SOP Classes as an SCU:

- The Image or other composite object Storage SOP Classes that are also supported by the SCU and may be referenced by instances of Structured Reporting Storage SOP Class.

- The range of Value Types and Relationship Types that are supported by the SCU.

- The conditions under which a new SOP Instance UID is generated for an existing SR Document.

- If the implementation provides Query/Retrieve of Structured Reporting SOP Instances as an SCU, whether it supports the Optional Keys Concept Name Code Sequence or Content Template Sequence.

### Note

The description of the Value Types and Relationship Types that are supported by the SCU is particularly important for the Extensible SR SOP Class.

#### O.4.1.1 CAD SR SOP Classes

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Mammography CAD SR SOP Class as an SCU:

- Which types of detections and/or analyses the device is capable of performing:

  - From detections listed in Context Group 6014 Mammography Single Image Finding

  - From analyses listed in Context Group 6043 Types of Mammography CAD Analysis

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Chest CAD SR SOP Class as an SCU:

- Which types of detections and/or analyses the device is capable of performing:

  - From detections listed in Context ID 6101 Chest Finding or Feature, or Context ID 6102 Chest Finding or Feature Modifier

  - From analyses listed in Context ID 6137 Types of CAD Analysis

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Colon CAD SR SOP Class as an SCU:

- Which types of detections and/or analyses the device is capable of performing:

  - From detections listed in Context ID 6201 Colon Finding or Feature

  - From analyses listed in Context ID 6137 Types of CAD Analysis

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Mammography CAD SR, Chest CAD SR or Colon CAD SR SOP Classes as an SCU that creates instances:

- Which optional content items are supported

- Conditions under which content items are assigned Rendering Intent of "Presentation Optional", and whether a CAD Operating Point value will be included with each Single Image Finding that has Rendering Intent of "Presentation Optional"

- Recommendations for the conditions under which content items with Rendering Intent of "Presentation Optional" should be rendered, based on CAD Operating Point or otherwise

- Conditions under which content items are assigned Rendering Intent of "Not for Presentation"

#### O.4.1.2 Ultrasound SR SOP Classes

The following shall be documented in the Conformance Statement of any SR creator implementation claiming conformance to the Simplified Adult Echo SR SOP Class as an SCU:

- A list of all the measurement codes from CID 12300 “Core Echo Measurements” supported by the device for use in TID 5301 “Pre-coordinated Echo Measurement”.

- A list of initial measurement codes supported by the device for use in Row 1 or 2 of TID 5302 “Post-coordinated Echo Measurement”.

  - Optionally, a table of the TID 5302 post-coordinated modifer values associated with each measurement code.

- A list of any extension codes added to CID 12301 “Measurement Selection Reasons”, CID 12304 “Echo Measured Properties”, CID 12305 “Basic Echo Anatomic Sites”, CID 12307 “Cardiac Phases and Time Points”, CID 12227 “Echocardiography Measurement Method”.

### O.4.2 Conformance Statement for an SCP

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Structured Reporting Storage SOP Class as an SCP:

- For an SCP of a Structured Reporting Storage SOP Class that is displaying or otherwise rendering the structured report contained in a SOP Instance of the Class, the general form in which the structured report related Attributes are rendered.

- For an SCP of a Structured Reporting Storage SOP Class, the Image or other composite object Storage SOP Classes that are also supported by the SCP and may be referenced by instances of the Structured Reporting Storage SOP Class, and whether or not they will be displayed or otherwise rendered.

- For an SCP of a Structured Reporting Storage SOP Class that is displaying or otherwise rendering an image or other composite object referred to by a SOP Instance of the Class, the manner in which the structured report related Attributes (such as spatial coordinates and referenced presentation states) are used to influence the display of the image or object.

- If the implementation supports Query/Retrieve of Structured Reporting SOP Instances as an SCP, whether it supports the Optional Keys Concept Name Code Sequence or Content Template Sequence.

#### O.4.2.1 CAD SR SOP Classes

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Mammography CAD SR, Chest CAD SR or Colon CAD SR SOP Classes as an SCP:

- Conditions under which the SCP will render content items with Rendering Intent concept modifier set to "Presentation Optional"

#### O.4.2.2 Extensible SR SOP Class

The following shall be documented in the Conformance Statement of any implementation claiming conformance to the Extensible SR SOP Class as an SCP:

- The behavior and warnings generated when encountering unsupported Content Items, Value Types and Relationship Types

# P Application Event Logging Service Class (Normative)

## P.1 Overview

### P.1.1 Scope

The Application Event Logging Service Class defines an application-level class-of-service that facilitates the network transfer of Event Log Records to be logged or recorded in a central location.

The Application Event Logging Service Class addresses the class of application specific logs (e.g., procedural event logs) that are managed by a medical application. The Application Event Logging Service Class does not specify the means of accessing the central logs.

### Note

This Service Class does not address system security or audit logs that are managed by general system logging applications and may use non-DICOM protocols (e.g., SYSLOG).

### P.1.2 Service Definition

Two peer DICOM AEs implement a SOP Class of the Application Event Logging Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Application Event Logging Service Class are implemented using the DIMSE-N N-ACTION service as defined in PS3.7.

The N-ACTION service conveys the following semantics:

- The SCU notifies the SCP that an event has occurred that the SCP should record in a log. The Action Information of the N-ACTION-RQ contains the information about the event.

- The SCP responds with a confirmation of the status of the recording action.

The association negotiation procedure is used to negotiate the supported SOP Classes. PS3.7 specifies the association procedure. The Application Event Logging Service Class does not support extended negotiation.

The release of an association shall not have any effect on the contents of the log managed by the SCP.

## P.2 Procedural Event Logging SOP Class Definition

The Procedural Event Logging SOP Class allows SCUs to report to an SCP the events that are to be recorded in a Procedure Log SOP Instance, as described in PS3.3. This allows multiple devices participating in a Study to cooperatively construct a log of events that occur during that Study.

The multiple procedural events reported through this SOP Class are related by Patient ID, Study Instance UID, Study ID, and/or Performed Location. The mechanism by which multiple devices obtain these shared identifiers is not defined by this SOP Class.

### Note

The Modality Worklist or UPS SOP Classes may be used for this purpose. For simple devices that cannot support worklist SOP classes, the SCP may be able to use Performed Location, or the SCU AE Title, to relate the use of the device to a particular procedure.

The SCP may also provide for recording events for which the SCU does not provide identifiers for matching. The mechanism by which the SCP determines the association of such an unidentified event with the log for a specific procedure is not defined by this SOP Class.

### Note

The network address and/or AE Title of the SCU may be used to identify the device as a participant in a particular procedure.

### P.2.1 DIMSE Service Group

The DIMSE-N Services applicable to the Procedural Event Logging SOP Class are shown in Table P.2-1.

Table P.2-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-ACTION | M/M

The DIMSE-N Services and Protocol are specified in PS3.7.

### P.2.2 Operation

The DICOM AEs that claim conformance to this SOP Class as an SCU shall invoke the N-ACTION request. The DICOM AEs that claim conformance to this SOP Class as an SCP shall support the N-ACTION request.

#### P.2.2.1 Action Information

The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Action Type and Action Information in the N-ACTION-RQ as specified in Table P.2-2.

Table P.2-2. Procedural Event Logging Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Record Procedural Event | 1 | Specific Character Set | (0008,0005) | 1C/1C (Required if an extended or replacement character set is used)
|  | Patient ID | (0010,0020) | 2/2
|  | Study Instance UID | (0020,000D) | 2/2
|  | Study ID | (0020,0010) | 2/2
|  | Synchronization Frame of Reference UID | (0020,0200) | 2/2
|  | Performed Location | (0040,0243) | 2/2
|  | All other Attributes of the SR Document Content Module using Procedure Log IOD Content Constraints |  | See Section P.2.2.1.3

##### P.2.2.1.1 Study Matching Attributes

The SCU may provide Patient ID (0010,0020), Study Instance UID (0020,000D), Study ID (0020,0010), and/or Performed Location (0040,0243) Attributes to allow the SCP to match the N-ACTION with a Study for which a procedure log is being created.

##### P.2.2.1.2 Synchronization Frame of Reference UID

The Synchronization Frame of Reference UID (0020,0200) Attribute identifies the temporal frame of reference for the Observation DateTime (0040,A032) Attributes in the Procedural Event record. If the Observation DateTime Attribute values are not synchronized in an identifiable Frame of Reference, the Attribute shall be zero length.

##### P.2.2.1.3 Constraints on Attributes of the SR Document Content Module

The Procedural Event record shall be conveyed in a (top level) Content Item, and subsidiary Content Items, as specified by the SR Document Content Module definition in PS3.3.

The top level and subsidiary Content Items shall be constructed in accordance with the Procedure Log IOD Content Constraints of PS3.3.

### Note

1. These constraints specify use of BTID 3001 Procedure Log defined in PS3.16, and specific particular use of the Observation DateTime (0040,A032) Attributes.

2. TID 3001 requires the explicit identification of the Observer Context of the top level CONTAINER through TID 1002.

3. There may be multiple events (subsidiary Content Items) included in a single N-ACTION-RQ message.

#### P.2.2.2 Service Class User Behavior

The SCU shall request logging of events that occur during a Study, using the N-ACTION request primitive.

The SCU shall receive N-ACTION responses. The actions taken upon a response status of Failure, or upon non-response of the SCP, are implementation dependent.

#### P.2.2.3 Service Class Provider Behavior

The SCP shall manage the creation of SOP Instances of the Procedure Log Storage Service. It shall receive, via the N-ACTION request primitive, requests for logging of events that occur during a Study. The SCP shall (consonant with application dependent constraints) incorporate those event records into a Procedure Log SOP Instance for the specified Study.

The SCP shall return, via the N-ACTION response primitive, the N-ACTION Response Status Code applicable to the associated action request.

#### P.2.2.4 Status Codes

Table P.2-3 defines the specific status code values that might be returned in a N-ACTION response. See PS3.7 for additional general response status codes.

Table P.2-3. Response Status

Service Status | Further Meaning | Status Code
--- | --- | ---
Success |  | 0000
Warning | Specified Synchronization Frame of Reference UID does not match SCP Synchronization Frame of Reference | B101
Warning | Study Instance UID coercion; Event logged under a different Study Instance UID | B102
Warning | IDs inconsistent in matching a current study; Event logged | B104
Failure | Failed: Procedural Logging not available for specified Study Instance UID | C101
Failure | Failed: Event Information does not match Template | C102
Failure | Failed: Cannot match event to a current study | C103
Failure | Failed: IDs inconsistent in matching a current study; Event not logged | C104

#### P.2.2.5 Action Reply

With any response status indicating Success or Warning, the identifiers of the study into which the event has been logged shall be returned in the N-ACTION-RSP Action Reply as specified in Table P.2-4.

Table P.2-4. Procedural Event Logging Action Reply

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Record Procedural Event | 1 | Study Instance UID | (0020,000D) | 3/1
Patient ID | (0010,0020) | 3/1

### P.2.3 Procedural Event Logging SOP Class UID

The Procedural Event Logging SOP Class shall be uniquely identified by the Procedural Event Logging SOP Class UID, which shall have the value "1.2.840.10008.1.40".

### P.2.4 Procedural Event Logging Instance Identification

The well-known UID of the Procedural Event Logging SOP Instance shall have the value "1.2.840.10008.1.40.1".

### P.2.5 Conformance Requirements

The DICOM AE's Conformance Statement shall be formatted as defined in PS3.2.

#### P.2.5.1 SCU Conformance

The SCU shall document in its Conformance Statement the behavior and actions that cause the SCU to generate an N-ACTION primitive (Procedural Event Notification). It shall specify the Template used for constructing the Event Information, and the Coding Schemes used for coded entries in the Event Information.

The SCU shall document the identifiers it sends for matching purposes, and how it obtains those Attributes (e.g., through a Modality Worklist query, manual entry, etc.).

The SCU shall document the behavior and actions performed when a success, warning, or failure status is received.

The SCU shall document the mechanisms used for establishing time synchronization and specifying the Synchronization Frame of Reference UID.

#### P.2.5.2 SCP Conformance

The SCP shall document in its Conformance Statement how it uses the identifiers it receives for matching the N-ACTION (Procedural Event Notification) to a specific procedure.

The SCP shall document the behavior and actions that cause the SCP to generate a success, warning, or failure status for a received N-ACTION.

The SCP shall document the behavior and actions that cause the SCP to generate a Procedure Log SOP Instance including the received Event Information.

The SCP shall document how it assigns the value of the Observation Datetime (0040,A032) Attribute when the SCU-provided Synchronization Frame of Reference UID is absent, or differs from that of the SCP.

## P.3 Substance Administration Logging SOP Class Definition

The Substance Administration Logging SOP Class allows an SCU to report to an SCP the events that are to be recorded in a patient's Medication Administration Record (MAR) or similar log, whose definition is outside the scope of the Standard. This allows devices with DICOM protocol interfaces to report administration of diagnostic agents (including contrast) and therapeutic drugs, and implantation of devices.

The Substance Administration reported through this SOP Class is related to the MAR by Patient ID or Admission ID. The mechanism by which the SCU obtains this identifier is not defined by this SOP Class.

The log entry to the MAR is authorized by at least one of the Operators identified in the Operator Identification Sequence. The mechanism by which the SCU obtains these identifiers is not defined by this SOP Class. The SCP may refuse the log entry if none of the identified Operators is authorized to add entries to the MAR. The mechanism by which the SCP validates such authorization is not defined by this SOP Class.

### Note

1. The SCP of this Service Class is not necessarily the Medication Administration Record system, but may be a gateway system between this DICOM Service and an HL7 or proprietary interface of a MAR system. Such implementation design is beyond the scope of the DICOM standard.

2. This SOP Class is not limited to only specifying medications, although the conventional name of the destination log is the Medication Administration Record. The SOP Class may also be used to record the implantation of therapeutic devices, including both drug-eluting and bare stents, prosthetic and cardiovascular devices, implantable infusion pumps, etc.

3. The application level authorization of Operators for the purpose of logging a MAR entry is distinct from any access control mechanism at the transport layer (see User Identity Association profiles in PS3.15).

### P.3.1 DIMSE Service Group

The DIMSE-N Services applicable to the Substance Administration Logging SOP Class are shown in Table P.3-1.

Table P.3-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-ACTION | M/M

The DIMSE-N Services and Protocol are specified in PS3.7.

### P.3.2 Operation

The DICOM AEs that claim conformance to this SOP Class as an SCU shall invoke the N-ACTION request. The DICOM AEs that claim conformance to this SOP Class as an SCP shall support the N-ACTION request.

#### P.3.2.1 Substance Administration Log Action Information

This operation allows an SCU to submit a Medication Administration Record log item or entry, providing information about a specific real-world act of Substance Administration that is the purview of the SCU. This operation shall be invoked through the DIMSE N-ACTION Service.

The Action Information Attributes are defined by the Substance Administration Log Module specified in PS3.3. The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Action Type and Action Information Attributes in the N-ACTION-RQ as specified in Table P.3-2.

Table P.3-2. Substance Administration Logging N-ACTION Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Record Substance Administration Event | 1 | Specific Character Set | (0008,0005) | 1C/1C (Required if an extended or replacement character set is used)
Patient ID | (0010,0020) | 1C/1C Either or both Patient ID and Admission ID shall be supplied by the SCU; the SCP shall support the Attribute if supplied
Issuer of Patient ID | (0010,0021) | 3/2
Patient's Name | (0010,0010) | 2/2
Admission ID | (0038,0010) | 1C/1C Either or both Patient ID and Admission ID shall be supplied by the SCU; the SCP shall support the Attribute if supplied
Issuer of Admission ID | (0038,0011) | 3/2
Product Package Identifier | (0044,0001) | 1C/1C Either or both Product Package Identifier and Product Name shall be supplied by the SCU; the SCP shall support the Attribute if supplied
Product Name | (0044,0008) | 1C/1C Either or both Product Package Identifier and Product Name shall be supplied by the SCU; the SCP shall support the Attribute if supplied
Product Description | (0044,0009) | 3/3
Substance Administration DateTime | (0044,0010) | 1/1
Substance Administration Notes | (0044,0011) | 3/2
Substance Administration Device ID | (0044,0012) | 3/3
Administration Route Code Sequence | (0054,0302) | 2/2
>Code Value | (0008,0100) | 1/1
>Coding Scheme Designator | (0008,0102) | 1/1
>Code Meaning | (0008,0104) | 1/1
Substance Administration Parameter Sequence | (0044,0019) | 3/3
> All Attributes of the Substance Administration Parameter Sequence |  | 3/3
Operator Identification Sequence | (0008,1072) | 1/1
>Person Identification Code Sequence | (0040,1101) | 1/1
>>Code Value | (0008,0100) | 1/1
>>Coding Scheme Designator | (0008,0102) | 1/1
>>Code Meaning | (0008,0104) | 1/1

#### P.3.2.2 Service Class User Behavior

The SCU shall request logging of substance administration events for a specified Patient using the N-ACTION request primitive.

The SCU shall receive N-ACTION responses. The actions taken upon a response status of Failure, or upon non-response of the SCP, are implementation dependent.

#### P.3.2.3 Service Class Provider Behavior

The SCP shall receive, via the N-ACTION request primitive, requests for logging of substance administration events. The SCP shall incorporate those event records into a Medication Administration Record or similar log for the specified Patient.

### Note

The patient's identify may be conveyed explicitly by Patient ID (0010,0020), or implicitly by Admission (i.e., Visit) ID (0038,0010). An institution may typically chose one or the other to use as the primary patient identifier at the point of care, e.g., printed on a bar coded wristband, the use of which may facilitate data entry for the log entry. However, in the "Model of the Real World for the Purpose of Modality-IS Interface" (see PS3.3), the Visit is subsidiary to the Patient; hence the Admission ID (0038,0010) may only be unique within the context of the patient, not within the context of the institution. The use of the Admission ID (0038,0010) Attribute to identify the Patient is only effective if the Admission ID (0038,0010) is unique within the context of the institution.

The SCP shall support inclusion into the Medication Administration Record or similar log of values of all Type 1 and Type 2 Attributes for which the SCU has provided values. The SCP may convert these Attributes into a form appropriate for the destination log.

### Note

The SCP may convert coded data to free text in the log, with loss of the specific code values, if the log does not support such coded data.

The SCP shall return, via the N-ACTION response primitive, the N-ACTION Response Status Code applicable to the associated action request.

#### P.3.2.4 Status Codes

Table P.3-3 defines the specific status code values that might be returned in a N-ACTION response. See PS3.7 for additional general response status codes.

Table P.3-3. Response Status

Service Status | Further Meaning | Status Code
--- | --- | ---
Success |  | 0000
Failure | Failed: Operator not authorized to add entry to Medication Administration Record | C10E
Failed: Patient cannot be identified from Patient ID (0010,0020) or Admission ID (0038,0010) | C110
Failed: Update of Medication Administration Record failed | C111

### P.3.3 Substance Administration Logging SOP Class UID

The Substance Administration Logging SOP Class shall be uniquely identified by the Substance Administration Logging SOP Class UID, which shall have the value "1.2.840.10008.1.42".

### P.3.4 Substance Administration Logging Instance UID

The well-known UID of the Substance Administration Logging SOP Instance shall have the value "1.2.840.10008.1.42.1".

### P.3.5 Conformance Requirements

The DICOM AE's Conformance Statement shall be formatted as defined in PS3.2.

#### P.3.5.1 SCU Conformance

The SCU shall document in its Conformance Statement the behavior and actions that cause the SCU to generate an N-ACTION-RQ primitive.

The SCU shall document how it obtains the Patient ID (0010,0020) or Admission ID (0038,0010) Attribute (e.g., through a Modality Worklist query, bar-code scan, manual entry, etc.).

The SCU shall document the behavior and actions performed when a success or failure status is received.

#### P.3.5.2 SCP Conformance

The SCP shall document in its Conformance Statement how it uses the information it receives for adding data to a Medication Administration Record.

The SCP shall document the behavior and actions that cause the SCP to generate a success or failure status for a received N-ACTION-RQ.

# Q Relevant Patient Information Query Service Class (Normative)

## Q.1 Overview

The Relevant Patient Information Query Service Class defines an application-level class-of-service that facilitates the access to relevant patient information such as it is known at the time of query.

The query information model consists of two entities with a one-to-one relationship: the Patient and the Patient Information.

The Patient Information may be general, or specific to a particular imaging or procedure domain. A general SOP Class is defined along with some additional domain specific SOP Classes.

## Q.2 DIMSE-C Service Group

One DIMSE-C Service is used in the construction of SOP Classes of the Relevant Patient Information Query Service Class. The following DIMSE-C operation is used.

- C-FIND

### Q.2.1 C-FIND Operation

SCPs of the Relevant Patient Information Query Service Class are capable of processing queries using the C-FIND operation as described in PS3.7. The C-FIND operation is the mechanism by which queries are performed. The SCP shall provide Relevant Patient Information for at most one matching patient in the C-FIND response.

#### Q.2.1.1 C-FIND Service Parameters

##### Q.2.1.1.1 SOP Class UID

The SOP Class UID identifies the Relevant Patient Information Model and Template against which the C-FIND 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-FIND operation.

##### Q.2.1.1.2 Priority

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

##### Q.2.1.1.3 Identifier

Both the C-FIND request and response contain an Identifier encoded as a Data Set (see PS3.5).

###### Q.2.1.1.3.1 Request Identifier Structure

An Identifier in a C-FIND request shall contain:

- Key Attributes with values to be matched against the values of Attributes specified in the SOP Class.

- Content Template Sequence (0040,A504), which shall include a single sequence item containing the Template Identifier (0040,DB00) and Mapping Resource (0008,0105) Attributes, to identify the template structure to use in the matching C-FIND responses.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Request Identifier. It shall not be included otherwise.

The Key Attributes and values allowable for the query are defined in the SOP Class definition for the Relevant Patient Information Model.

###### Q.2.1.1.3.2 Response Identifier Structure

The C-FIND response shall not contain Attributes that were not in the request or specified in this section.

An Identifier in a C-FIND response shall contain:

- Key Attributes with values corresponding to Key Attributes contained in the Identifier of the request.

- Content Template Sequence (0040,A504), which shall include a single sequence item containing the Template Identifier (0040,DB00) and Mapping Resource (0008,0105) Attributes, to identify the template structure used in the C-FIND response. The values shall be the same as specified in the Request Identifier.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Response Identifier. It shall not be included otherwise. The C-FIND SCP is not required to return responses in the Specific Character Set requested by the SCU if that character set is not supported by the SCP. The SCP may return responses with a different Specific Character Set.

###### Q.2.1.1.3.3 Relevant Patient Information Templates

Templates used in the Relevant Patient Information query are defined in PS3.16.

The template specified in the Request Identifier shall not use by-reference relationships.

##### Q.2.1.1.4 Status

Table Q.2-1 defines the status code values that might be returned in a C-FIND response. General status code values and fields related to status code values are defined for C-FIND DIMSE Service in PS3.7.

Table Q.2-1. C-FIND Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
Error: Data Set Does Not Match SOP Class | A900 | (0000,0901) (0000,0902)
Failed: Unable to process | C000 | (0000,0901) (0000,0902)
Failed: More than one match found | C100 | (0000,0901) (0000,0902)
Failed: Unable to support requested template | C200 | (0000,0901) (0000,0902)
Cancel | Matching terminated due to Cancel request | FE00 | None
Success | Success. Matching is complete - No final Identifier is supplied. | 0000 | None
Pending | Current Match is supplied. | FF00 | Identifier

### Note

Status Codes are returned in DIMSE response messages (see PS3.7). The code values stated in column "Status Codes" are returned in Status Command Element (0000,0900).

## Q.3 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure specified in PS3.7 shall be used to negotiate the supported SOP Class.

SOP Class Extended Negotiation is not defined for this Service Class.

## Q.4 DIMSE-C C-FIND Service

The DIMSE-C C-FIND service is the operation by which relevant patient information is queried and provided.

### Q.4.1 Conventions

Key Attributes in the Request Identifier serve two purposes. They may be used as Matching Key Attributes and Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5.

### Q.4.2 Service Definition

Two peer DICOM AEs implement this Relevant Patient Information Query Service Class with one serving in the SCU role and one serving in the SCP role. The SOP Class is implemented using the DIMSE-C C-FIND service as defined in PS3.7.

Only a baseline behavior of the DIMSE-C C-FIND is used in this Service Class.

A C-FIND service conveys the following semantics:

- The SCU requests that the SCP perform a match for the Matching Keys and return values for the Return Keys that have been specified in the Identifier of the request, against the Relevant Patient Information that the SCP possesses.

  ### Note

  In this Annex, the term "Identifier" refers to the Identifier service parameter of the C-FIND service as defined in PS3.7.

- The SCP generates a C-FIND response for at most one match with an Identifier containing the values of all Matching Key Attributes and all known Return Key Attributes requested. The response contains one relevant patient information instance in the form that matches the Template that was requested. This response shall contain a status of Pending.

- When the process of matching is complete, with zero or one match, a C-FIND response is sent with a status of Success and no Identifier.

- A Failed response to a C-FIND request indicates that the SCP is unable to process the request. This shall be used to indicate that the requested template is not supported by the SCP, or that more than one match was found by the SCP.

- The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND service. The SCP will interrupt all matching and return a status of Canceled.

  ### Note

  The SCU needs to be prepared to receive C-FIND responses sent by the SCP until the SCP finally processes the C-FIND-CANCEL request.

### Q.4.3 Relevant Patient Information Model SOP Classes

#### Q.4.3.1 Relevant Patient Information Model

In order to serve as a Service Class Provider (SCP) of one or more Relevant Patient Information Model SOP Classes, a DICOM Application Entity (AE) possesses relevant information about patients. This information is organized into a Relevant Patient Information Model.

The SOP Classes are composed of both the Information Model and a DIMSE-C Service Group.

##### Q.4.3.1.1 E/R Model

The E/R Model consists of Patient and Structured Information, with no relationship to other Information Entities in the DICOM Information model.

Figure Q.4-1. Relevant Patient Information E/R Model

The Patient IE includes the Attributes of the Patient Identification and Patient Demographics Modules.

The Structured Information IE includes Attributes that are not inherently related to a real-world entity, but are interpreted through their coded content. This includes the Attributes of the Structured Document Content Module, which in the case of the Relevant Patient Information Query Service has its content constrained by specified templates to convey patient related information. Also included in the Structured Information IE are Attributes of the SOP Common and Common Instance Reference Modules that support the interpretation of coded data, or support access to referenced information objects identified in the coded data.

##### Q.4.3.1.2 Relevant Patient Information Attributes

Table Q.4-1 defines the Attributes of the Relevant Patient Information Model:

Table Q.4-1. Attributes for the Relevant Patient Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
Patient
Patient's Name | (0010,0010) | - | 1 |
Patient ID | (0010,0020) | R | 1 | Shall be present in the Request Identifier. Shall be retrieved with Single Value Matching. ### Note Since only one response is expected, this is a unique key.
Issuer of Patient ID | (0010,0021) | R | 2 | Shall be retrieved with Single Value Matching. In situations where there are multiple issuers, this key constrains matching of Patient ID (0010,0020) to a domain in which the Patient ID (0010,0020) is unique.
Patient's Birth Date | (0010,0030) | - | 2 |
Patient's Sex | (0010,0040) | - | 2 |
All other Attributes of the Patient Identification Module |  | - | 3 |
All other Attributes of the Patient Demographic Module |  | - | 3 |
Structured Information (SR Document Content Module)
Observation DateTime | (0040,A032) | - | 1 |
Value Type | (0040,A040) | - | 1 | See Section Q.4.3.1.2.1.
Concept Name Code Sequence | (0040,A043) | - | 1 | See Section Q.4.3.1.2.1.
>Code Value | (0008,0100) | - | 1 |
>Coding Scheme Designator | (0008,0102) | - | 1 |
>Coding Scheme Version | (0008,0103) | - | 1C | Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously.
>Code Meaning | (0008,0104) | - | 1 |
>All other Attributes of the Concept Name Code Sequence |  |  |  |
Content Sequence | (0040,A730) | - | 2 | See Section Q.4.3.1.2.1.
>All Attributes of the Content Sequence |  | - | - | Content Items as provided by the SCP. Requirements on Content Item Attribute Types shall be in accordance with the definitions in the SR Document Content Module.
HL7 Structured Document Reference Sequence | (0040,A390) | - | 1C |
>Referenced SOP Class UID | (0008,1150) | - | 1 |
>Referenced SOP Instance UID | (0008,1155) | - | 1 |
>HL7 Instance Identifier | (0040,E001) | - | 1 |
>Retrieve URI | (0040,E010) | - | 3 |
Structured Information (Common Instance Reference Module)
Studies Containing Other Referenced Instances Sequence | (0008,1200) | - | 1C | Required if Content Sequence (0040,A390) includes Content Items that reference SOP Instances that use the Patient/Study/Series/Instance information model.
>Referenced Series Sequence | (0008,1115) | - | 1 |
>>Series Instance UID | (0020,000E) | - | 1 |
>>Referenced Instance Sequence | (0008,114A) | - | 1 |
>>>Referenced SOP Class UID | (0008,1150) | - | 1 |
>>>Referenced SOP Instance UID | (0008,1155) | - | 1 |

The Attributes in Table Q.4-2 are not part of the Information Model; their inclusion in the C-FIND request and response identifier are governed by rules in sections Section Q.2.1.1.3.1 and Section Q.2.1.1.3.2, respectively.

Table Q.4-2. Additional C-FIND Identifier Attributes

Attribute Name | Tag | Type in Request Identifier | Type in Response Identifier | Remark
--- | --- | --- | --- | ---
Content Template Sequence | (0040,A504) | 1 | 1 |
>Mapping Resource | (0008,0105) | 1 | 1 |
>Template Identifier | (0040,DB00) | 1 | 1 |
Specific Character Set | (0008,0005) | 1C | 1C | Required if expanded or replacement character sets are used. See Section Q.2.1.1.3,

##### Q.4.3.1.2.1 Relevant Patient Information Attribute Descriptions

Concept Name Code Sequence (0040,A043) in a C-FIND Response shall have one sequence item that identifies the Root node concept of the returned structure. This shall be the same as the Concept Name of the first row of the template identified in the Content Template Sequence (0040,A504) in the Identifier. The Concept Name Code Sequence (0040,A043) shall always be sent zero length in the Request Identifier.

The Value Type (0040,A040) applies to the Concept Name Code Sequence (0040,A043), and shall be the same as the Value Type (0040,A040) of the first row of the template identified in the Content Template Sequence (0040,A504) in the Identifier.

The Content Sequence (0040,A730) is a potentially recursively nested Sequence of Items, as described in PS3.3, SR Document Content Module. The Content Sequence shall always be sent zero length in the Request Identifier. The Content Sequence in the data set of the Response shall contain the content items of the requested template.

#### Q.4.3.2 Conformance Requirements

An implementation may conform to the Relevant Patient Information Model SOP Classes as an SCU and/or as an SCP.

The Conformance Statement shall be in the format defined in PS3.2.

##### Q.4.3.2.1 SCU Conformance

An implementation that conforms to one or more of the Relevant Patient Information Model SOP Classes shall support queries against the Relevant Patient Information Model described in Section Q.4.3.1 using the baseline C-FIND SCU Behavior described in Section Q.4.2.

An implementation that conforms to one or more of the Relevant Patient Information Model SOP Classes as an SCU shall state in its Conformance Statement which SOP Class(es) it supports, and which Root template(s) it may request in a query if not specified by the SOP Class. The Conformance Statement shall also state the definition of any supported template extensions.

##### Q.4.3.2.2 SCP Conformance

An implementation that conforms to one or more of the Relevant Patient Information Model SOP Classes shall support queries against the Relevant Patient Information Model described in Section Q.4.3.1 using the baseline C-FIND SCP Behavior described in Section Q.4.2.

An implementation that conforms to one or more of the Relevant Patient Information Model SOP Classes as an SCP shall state in its Conformance Statement which SOP Class(es) it supports, and which Root template(s) it will support in a query response if not specified by the SOP Class. The Conformance Statement shall also state the definition of any supported template extensions.

An implementation that conforms to one or more of the Relevant Patient Information Model SOP Classes as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching, and encoding responses.

#### Q.4.3.3 SOP Classes

The Relevant Patient Information Model SOP Classes in the Relevant Patient Information Query Service Class identify the Relevant Patient Information Model, and the DIMSE-C operation supported. In some instances a Root template is specified. The Standard SOP Classes are defined in Table Q.4-3:

Table Q.4-3. SOP Classes for the Relevant Patient Information Model

SOP Class Name | SOP Class UID | Root Template
--- | --- | ---
General Relevant Patient Information Query | 1.2.840.10008.5.1.4.37.1 | TID 9007 General Relevant Patient Information, or from the list in PS3.16
Breast Imaging Relevant Patient Information Query | 1.2.840.10008.5.1.4.37.2 | TID 9000 Relevant Patient Information for Breast Imaging
Cardiac Relevant Patient Information Query | 1.2.840.10008.5.1.4.37.3 | TID 3802 Cardiovascular Patient History

### Note

The list of Root templates for the General Relevant Patient Information Query is extensible.

## Q.5 Relevant Patient Information Query Example (Informative)

Moved to PS3.17.

# R Instance Availability Notification Service Class (Normative)

## R.1 Overview

### R.1.1 Scope

The Instance Availability Notification Service Class defines an application-level class-of-service that allows one DICOM AE to notify another DICOM AE of the presence and availability of SOP instances that may be retrieved. The AE from which such SOP Instances can later be retrieved may or may not be the SCU performing the notification.

### Note

An example of usage of this Service Class is for the receiver of the instances to provide notification of their arrival and availability for subsequent workflow steps to a different entity, such as a separate workflow manager.

The SCU implementation defines the conditions under which it provides the notification. Certain SCUs may provide notification for arbitrary sets of SOP Instances, while other SCUs may provide notification when they determine that the instances associated with a Procedure Step or a Requested Procedure are available. The SCU is required to document in its Conformance Statement the nature of its notification decisions (e.g., frequency of notifications, retrieve capabilities and latency, etc.).

Once the SCU has provided notification about availability of the SOP Instances, the SCP may use that information in directing further workflow, such as in populating the Input Information Sequence when forming a Unified Procedure Step. These types of policies are outside the scope of this Standard, however, the SCP is required to document these policies in its Conformance Statement.

The SCU of this Service Class is not required to assure that the study, procedure step or any workflow-related entity is "complete"; indeed no semantics other than the concept of "availability" is expressed or implied by the use of this service.

### Note

1. The Performed Workitem Code Sequence (0040,4019) Attribute of a referenced GP-PPS instance may provide the specific description of the work item that triggered the Instance Availability Notification.

2. The Instance Availability Notification is typically a service of the composite instance Storage SCP, since that application is responsible for making the instances available. The Instance Availability Notification allows that application to report the specific Retrieve AE Title, which may differ from the Storage Service AE Title, and may vary with different instance SOP Classes, or may vary over time.

## R.2 Conformance Overview

The Instance Availability Notification Service Class consists of a single SOP Class: the Instance Availability Notification SOP Class.

The SOP Class specifies Attributes, operations, and behavior applicable to the SOP Class. The conformance requirements shall be specified in terms of the Service Class Provider (SCP) and the Service Class User (SCU).

The Instance Availability Notification Service Class uses the Instance Availability Notification IOD as defined in PS3.3 and the N-CREATE DIMSE Service specified in PS3.7.

## R.3 Instance Availability Notification SOP Class

### R.3.1 DIMSE Service Group

The DIMSE Services shown in Table R.3.1-1 are applicable to the Instance Availability Notification IOD under the Instance Availability Notification SOP Class.

Table R.3.1-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M

The DIMSE Services and Protocols are specified in PS3.7.

### Note

Though the terminology "notification" is used for this Service Class, the notification is in fact performed through Operations rather than Notifications.

### R.3.2 Operations

The Application Entity that claims conformance to this SOP Class as an SCU shall be permitted to invoke the following operations and the Application Entity that claims conformance as an SCP shall be capable of providing the following operations.

#### R.3.2.1 N-CREATE Instance Availability Notification SOP Instance

This operation allows an SCU to create an instance of the Instance Availability Notification SOP Class and to provide availability information about Instances that are under the control of the SCU. This operation shall be invoked through the DIMSE N-CREATE Service.

##### R.3.2.1.1 Attributes

The Attribute list of the N-CREATE is defined as shown in Table R.3.2-1.

Table R.3.2-1. Instance Availability Notification SOP Class N-CREATE Attributes

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP)
--- | --- | ---
Specific Character Set | (0008,0005) | 1C/1C (Required if an extended or replacement character set is used)
All other Attributes of the SOP Common Module | 3/3
Referenced Performed Procedure Step Sequence | (0008,1111) | 2/2
>Referenced SOP Class UID | (0008,1150) | 1/1
>Referenced SOP Instance UID | (0008,1155) | 1/1
>Performed Workitem Code Sequence | (0040,4019) | 2/2
>>Code Value | (0008,0100) | 1/1
>>Coding Scheme Designator | (0008,0102) | 1/1
>>Code Meaning | (0008,0104) | 1/1
>>All other Attributes of the Performed Workitem Code Sequence | 3/3
Study Instance UID | (0020,000D) | 1/1
Referenced Series Sequence | (0008,1115) | 1/1
>Series Instance UID | (0020,000E) | 1/1
>Referenced SOP Sequence | (0008,1199) | 1/1
>>Referenced SOP Class UID | (0008,1150) | 1/1
>>Reference SOP Instance UID | (0008,1155) | 1/1
>>Instance Availability | (0008,0056) | 1/1
>>Retrieve AE Title | (0008,0054) | 1/1
>>Retrieve Location UID | (0040,E011) | 3/3
>>Retrieve URI | (0040,E010) | 3/3
>>Retrieve URL | (0008,1190) | 3/3
>>Storage Media File-Set ID | (0088,0130) | 3/3
>>Storage Media File-Set UID | (0088,0140) | 3/3

##### R.3.2.1.2 Service Class User

The SCU shall specify in the N-CREATE request primitive the SOP Class and SOP Instance UIDs of the Instance Availability Notification SOP Instance that is created and for which Attribute Values are to be provided.

The SCU shall provide Attribute values for the Instance Availability Notification SOP Class Attributes as specified in Table R.3.2-1.

The use of additional optional Attributes by the SCU is forbidden.

### Note

The reason for forbidding optional Attributes is to prevent the use of Standard Extended SOP Classes that might add contextual information such as patient and procedure identifiers.

The encoding rules for Instance Availability Notification Attributes are specified in the N-CREATE request primitive specification in PS3.7.

There are no requirements on when N-CREATE requests are required to be performed.

In particular, there are no requirements that notification about the availability of the first instance of a Performed Procedure Step or Study be provided upon its reception, nor that availability notification be provided when an entire set of instances comprising a completed Performed Procedure Step or Study are available, though these are typical and common scenarios.

##### R.3.2.1.3 Service Class Provider

The SCP shall return, via the N-CREATE response primitive, the N-CREATE Response Status Code applicable to the associated request.

##### R.3.2.1.4 Status Codes

There are no specific status codes. See PS3.7 for response status codes.

### R.3.3 Instance Availability Notification SOP Class UID

The Instance Availability Notification SOP Class shall be uniquely identified by the Instance Availability Notification SOP Class UID, which shall have the value "1.2.840.10008.5.1.4.33".

### R.3.4 Conformance Requirements

Implementations shall include within their Conformance Statement information as described below.

An implementation may conform to this SOP Class as an SCU or as an SCP. The Conformance Statement shall be in the format defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

#### R.3.4.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for the operations that it invokes.

##### R.3.4.1.1 Operations

Any Attributes for which Attribute Values may be provided (using the N-CREATE) by the SCU shall be enumerated in the SCU Conformance Statement. The SCU Conformance Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

An implementation that conforms to this SOP Class as an SCU shall specify under which conditions during the performance of real-world activities it will create the SOP Class Instance.

The SCU Conformance Statement shall specify what is meant by each reported value of Instance Availability (0008,0056).

The SCU Conformance Statement shall describe the relationship between the Instance Availability Notification and the Performed Procedure Step SOP Classes, if the latter are supported.

#### R.3.4.2 SCP Conformance

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for the operations that it performs.

##### R.3.4.2.1 Operations

The SCP Conformance Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

The SCP Conformance Statement shall provide information on the behavior of the SCP (in terms of real world activities) for each reported value of Instance Availability (0008,0056).

The SCP Conformance Statement shall describe the behavioral relationship between the Instance Availability Notification and the Performed Procedure Step SOP Classes, if the latter are supported.

# S Media Creation Management Service Class (Normative)

## S.1 Overview

### S.1.1 Scope

The Media Creation Management Service Class defines a mechanism by which an SCU can instruct a device to create Interchange Media containing a set of Composite SOP Instances that have already been transferred to the media creation device using the Storage Service Class.

This Service Class does not address archival storage requirements. It is intended only for the management of media creation devices. There is no requirement by the Standard that an SCP of this Service Class will commit to taking responsibility for archival of Composite Instances, such that an SCU may then discard them. Such behavior is entirely outside the scope of the Standard. In other words, Media Creation does not imply Storage Commitment.

The application profile(s) for the set of instances, which implies the form of the media created (i.e., CD, DVD or MOD), can either be left to the discretion of the SCP, or explicitly specified in the media creation request. In the latter case, if the device is unable to create the requested profiles, an error shall be returned.

### Note

1. More than one profile may be requested or used by default, since the requested set of instances may not be compatible with a single profile. DICOM media may always contain instances written by more than one profile. See PS3.2.

2. It is the responsibility of the SCU to negotiate and store instances with an appropriate Transfer Syntax should a specific Transfer Syntax be required by a requested profile. The SCP is not required to support compression or decompression of stored instances in order to convert stored instances into a form suitable for a requested profile. It may do so, if so requested, but the level of lossy compression would be at the discretion of the SCP. If the degree of compression is important to the application, then the SCU may compress the images before sending them to the SCP.

The request controls whether or not a label is to be generated on the media, be it from information contained in the instances (such as patient demographics) or from text explicitly specified in the request.

### Note

1. An SCP may or may not be physically capable of labeling the media. This capability is outside the scope of conformance to the Standard. Inability to create a label is not an error.

2. De-identification of instances (and labels), such as for teaching file media or clinical trial media is the responsibility of the SCU and is outside the scope of this service. That is, the SCU must de-identify the composite instances before sending them, prior to the media creation request.

The Service Class contains a limited capability to return status information. A media creation request may initially either fail or be accepted. Subsequently, the SCP may be polled as to the status of the request (idle, pending/creating, successful or failed) by the SCU on the same or on a separate Association. There is no asynchronous notification. There is no dependence on the duration or persistence of an Association.

### Note

There is no requirement to manage the handling of transient failures (such as an empty supply of blank media or labels or ink). Whether or not the SCP queues stored instances and requests in such cases, or fails to accept the request, is outside the scope of the Standard.

## S.2 Conformance Overview

The application-level services addressed by this Service Class are specified via the Media Creation Management SOP Class.

The Media Creation Management SOP Class specifies Attributes, operations and behavior applicable to the SOP Class. The conformance requirements shall be specified in terms of the Service Class Provider (SCP) and the Service Class User (SCU).

The Media Creation Management Service Class uses the Media Creation Management IOD as defined in PS3.3 and the N-CREATE, N-ACTION and N-GET Services specified in PS3.7.

### S.2.1 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation rules as specified in PS3.7 shall be used to negotiate the supported SOP Classes.

Support for the SCP/SCU role selection negotiation is not applicable. The SOP Class Extended Negotiation is not defined for this Service Class.

## S.3 Media Creation Management SOP Class

The SCU transmits the SOP Instances to the SCP using the Storage Service Class. The request for media creation is transmitted to the SCP and contains a list of references to one or more SOP Instances. Success or failure of media creation is subsequently indicated by the SCU requesting the status from the SCP on the same or a separate association.

### S.3.1 DIMSE Service Group

The following DIMSE-N Services are applicable to the Media Creation Management SOP Class.

Table S.3.1-1. DIMSE-N Services Applicable to Media Creation Management

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-ACTION | M/M
N-GET | U/M

The DIMSE-N Services and Protocol are specified in PS3.7.

### S.3.2 Operations

The DICOM AEs that claim conformance to this SOP Class as an SCU shall invoke the N-CREATE and the N-ACTION operations. The DICOM AEs that claim conformance to this SOP Class as an SCP shall support the N-CREATE, the N-ACTION and the N-GET operations.

#### S.3.2.1 Create a Media Creation Request

The Create a Media Creation Request operation allows an SCU to create an instance of the Media Creation Management SOP Class and initialize Attributes of the SOP Class. The SCP uses this operation to create a new media creation request containing the set of SOP Instances that shall be included in the Interchange Media. This operation shall be invoked through the N-CREATE primitive

##### S.3.2.1.1 Attributes

The DICOM AEs that claim conformance to this SOP Class as an SCU may choose to provide a subset of the Attributes maintained by the SCP. The DICOM AEs that claim conformance to this SOP Class as an SCP shall support a subset of the Media Creation Management specified in Table S.3.2.1.1-1.

Table S.3.2.1.1-1. Media Creation Management - N-CREATE Attributes

Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | ---
Specific Character Set | (0008,0005) | 1C/1C (Required if expanded or replacement character set is used)
Storage Media File-Set ID | (0088,0130) | 3/3 See Section S.3.2.1.1.1.
Storage Media File-Set UID | (0088,0140) | 3/3 See Section S.3.2.1.1.1.
Label Using Information Extracted From Instances | (2200,0001) | 3/1C See Section S.3.2.1.1.4.
Label Text | (2200,0002) | 3/1C See Section S.3.2.1.1.4.
Label Style Selection | (2200,0003) | 3/1C See Section S.3.2.1.1.4.
Barcode Value | (2200,0005) | 3/3 See Section S.3.2.1.1.4
Barcode Symbology | (2200,0006) | 3/3 See Section S.3.2.1.1.4
Media Disposition | (2200,0004) | 3/3 See Section S.3.2.1.1.5.
Allow Media Splitting | (2200,0007) | 3/1C See Section S.3.2.1.1.6
Allow Lossy Compression | (2200,000F) | 3/1C See Section S.3.2.1.1.9
Include Non-DICOM Objects | (2200,0008) | 3/1C See Section S.3.2.1.1.7
Include Display Application | (2200,0009) | 3/1C See Section S.3.2.1.1.8
Preserve Composite Instances After Media Creation | (2200,000A) | 3/3
Referenced SOP Sequence | (0008,1199) | 1/1
>Referenced SOP Class UID | (0008,1150) | 1/1
>Referenced SOP Instance UID | (0008,1155) | 1/1
>Requested Media Application Profile | (2200,000C) | 3/1 See Section S.3.2.1.1.2.
>Icon Image Sequence | (0088,0200) | 3/1C See Section S.3.2.1.1.3.

###### S.3.2.1.1.1 Storage Media File-Set Attributes

If present, the Storage Media File-Set ID (0088,0130) and Storage Media File-Set UID (0088,0140) shall be used on the media created. If absent, the media shall contain values generated by the SCP.

If the media request will not fit on a single volume (single piece or side of media), then whether or not the SCP ignores Storage Media File-Set ID (0088,0130), or uses it as a prefix and appends information to distinguish volumes, is implementation dependent. Different values of Storage Media File-Set UID (0088,0140) shall be used for different volumes.

If multiple copies are requested, the same Storage Media File-Set ID (0088,0130) and Storage Media File-Set UID (0088,0140) shall be used on all copies.

### Note

Care should be taken with multiple copies written to rewritable media that their contents do not diverge even though their identifiers are identical.

###### S.3.2.1.1.2 Requested Media Application Profile

The Requested Media Application Profile (2200,000C), if present, shall be used by the SCP for the specified SOP Instance. If absent for a particular instance, the choice of Media Application Profile for that instance shall be at the discretion of the SCP.

### Note

1. Different Media Application Profiles may be used for different instances on the same piece of media.

2. The form of the DICOMDIR directory records that the SCP must create may be significantly influenced by the media application profiles used.

###### S.3.2.1.1.3 Icon Image Sequence

The Icon Image Sequence (0088,0200), if present:

- shall be used by the SCP for inclusion in the instance-level DICOM Directory Record for the specified SOP Instance, if the Media Application Profile requires its inclusion, and the icon supplied by the SCU meets the requirements of the profile

- may be used by the SCP for inclusion in the instance-level DICOM Directory Record for the specified SOP Instance, if the Media Application Profile does not require its inclusion

If absent for a particular instance, the choice of Media Application Profile for that instance dictates whether or not the SCP is required to create its own Icon Image Sequence (0088,0200) from the contents of the SOP Instance.

### Note

1. Some Media Application Profiles require the inclusion of an Icon Image Sequence (0088,0200) in the directory records.

2. Some Media Application Profiles specify constraints on the form of the Icon Image Sequence (0088,0200).

3. The SCP may choose to extend the Media Application Profile by generating and including icons anyway.

###### S.3.2.1.1.4 Labeling

The SCP may or may not have the capability to print a label on (or for) the media. If it does, then the following SCP behavior shall apply and the specified Attributes are required to be supported by the SCP.

The Label Using Information Extracted From Instances (2200,0001) Attribute is a flag that instructs the SCP whether or not to create any label using the Patient and Study information contained within the instances themselves.

### Note

The SCP may implement whatever it considers to be an appropriate subset of any Attributes of any Modules at the Patient, Specimen and Study entities in the DICOM Information Model specified in PS3.3. Typically included are such Attributes as Patient Name (0010,0010), Patient ID (0010,0020), Study ID (0020,0010), and Study Date (0008,0020).

The Label Text (2200,0002) Attribute is additional text that the SCP shall include on any label, either in addition to or instead of any extracted demographics, depending on the value of Label Using Information Extracted From Instances (2200,0001).

The Label Style Selection (2200,0003) Attribute is a code string, which if present, may be used by the SCP to choose one or more implementation-dependent styles of labeling.

The Barcode Value (2200,0005) and the Barcode Symbology (2200,0006), if present, may be used by the SCP to print a barcode on the label.

Note It is SCU responsibility to convey a value for the Barcode Value (2200,0005) Attribute consistent in length and content with the requested Barcode Symbology (2200,0006).

###### S.3.2.1.1.5 Media Disposition

The Media Disposition (2200,0004), if present, may be used by the SCP to determine where and to whom to send the media when completed.

### Note

For example, it may contain the name and address of a referring doctor, and be used to print a label for an envelope or mailer, or as additional material to be printed on the media label.

###### S.3.2.1.1.6 Allow Media Splitting

The SCP may or may not have the capability to split a request over more than one piece of media (e.g., if it doesn't fit on one). If it does, then the following SCP behavior shall apply and the specified Attributes are required to be supported by the SCP.

The Allow Media Splitting Attribute (2200,0007) shall be used by the SCP to determine if it is permitted to split this request over more than one piece of media.

### Note

1. If the file-set size exceeds the media storage capacity, and this flag has been set to NO, the SCP shall refuse to process the request.

2. If the requested Media Application Profile allows for lossless compression, and images are not already compressed, such compression may be applied by the SCP in order to fit all instances on a single piece of media. This also applies to lossy compression if it has not been allowed by the value of Allow Lossy Compression (2200,000F).

###### S.3.2.1.1.7 Include Non-DICOM Objects

The SCP may or may not have the capability to include on the created media additional Non-DICOM objects (e.g., HTML files, JPEG images) that are a rendering of the DICOM instances. If it does, then the following SCP behavior shall apply and the specified Attributes are required to be supported by the SCP.

The Include Non-DICOM Objects (2200,0008) shall be used to request the SCP to add additional Non-DICOM objects onto the created media.

An SCP is not required to be able to add such files. Inability to add Non-DICOM objects is not an error.

If Include Non-DICOM Objects (2200,0008) is set to NO, the SCP shall not include additional non-DICOM objects on the media.

###### S.3.2.1.1.8 Include Display Application

The SCP may or may not have the capability to include on the created media an application for displaying DICOM instances. If it does, then the following SCP behavior shall apply and the specified Attributes are required to be supported by the SCP.

The Include Display Application (2200,0009) shall be used to request the SCP to add an application for displaying DICOM instances onto the created media.

An SCP is not required to be able to add such an application. Inability to add a display application is not an error.

Whether the display application is capable of displaying all stored instances is beyond the scope of the standard.

Whether the display application automatically executes when media is inserted for reading is beyond the scope of the standard.

Which platforms are supported by the display application(s) is beyond the scope of the standard.

### Note

Multiple files may need to be included in the media to support the display application, rather than a single executable file, and these may be present, even if the Include Non-DICOM Objects (2200,0008) Attribute has a value of NO.

If Include Display Application (2200,0009) is set to NO, the SCP shall not include a display application on the media.

###### S.3.2.1.1.9 Allow Lossy Compression

If Allow Lossy Compression (2200,000F) has a value of YES, the SCP is allowed to perform lossy compression under the following circumstances:

- if it receives uncompressed or lossless compressed images yet is requested to use a profile that requires lossy compression, or

- if Allow Media Splitting (2200,0007) is NO, and the request would otherwise need to be split across media.

If Allow Lossy Compression (2200,000F) has a value of YES but the requested profile does not permit lossy compression, lossy compression shall not be performed.

The level of compression is at the SCP's discretion.

The SCP shall not decompress and recompress already lossy compressed images, but may use images that have already been lossy compressed.

The SCP is never required to perform lossy compression.

If Allow Lossy Compression (2200,000F) has a value of NO, the SCP is not allowed to perform lossy compression. If Allow Lossy Compression (2200,000F) has a value of NO and the requested profile requires lossy compression, an error shall be returned.

##### S.3.2.1.2 Service Class User Behavior

The SCU shall use the N-CREATE primitive to inform the SCP that a new media creation request has been placed and to convey the proprieties of this request. The request proprieties (e.g., the set of SOP Instances that the creating interchange media shall contain) are referenced in the IOD Attributes as specified in Table S.3.2.1.1-1.

Upon receipt of a successful N-CREATE Response Status Code from the SCP, the SCU now knows that the SCP has received the N-CREATE request and a new media creation request has been created.

Upon receipt of a failure N-CREATE Response Status Code from the SCP, the SCU now knows that the SCP will not process the request. The actions taken by the SCU upon receiving the status is beyond the scope of this Standard.

At any time after receipt of the N-CREATE-Response, the SCU may release the association on which it sent the N-CREATE-Request.

### Note

An N-GET of the corresponding of the Media Creation Management SOP Class may be performed on the same or subsequent associations.

##### S.3.2.1.3 Service Class Provider Behavior

Upon receipt of the N-CREATE request, the SCP shall return, via the N-CREATE response primitive, the N-CREATE Response Status Code applicable to the associated request. A success status conveys that the SCP has successfully received the N-CREATE request.

Warning statuses shall not be returned.

Any other status (i.e., a failure status) conveys that the SCP is not processing the media creation request.

### Note

1. It is not specified by the Standard what checks the SCP shall accomplish after the N-CREATE request primitive reception and before returning the N-CREATE response. Implementations are discouraged from performing extended validation of the contents of the N-CREATE request, such as availability of the referenced Composite SOP Instances, support for the requested profiles, etc. In case of N-CREATE failure, the SCU would not be able to perform an N-GET to determine the detailed reasons for failure, and allow operators to apply suitable correction actions to make the request processable (e.g., resending any missing Composite SOP Instances). Such checks are better deferred until after receipt of the N-ACTION request, after which an N-GET may be performed.

2. The Standard does not require the SCP to queue multiple requests, though implementations are encouraged to do so. As a consequence, a new request before a previous request has been completed may fail immediately, or may return a successful response and be queued. The size of any such queue is beyond the scope of the Standard.

3. How long the instance of the Media Creation Management SOP Class persists once the Execution Status (2100,0020) has been set to IDLE is beyond the scope of the Standard.

The N-CREATE implicitly creates the Execution Status (2100,0020) and Execution Status Info (2100,0030) Attributes, which may subsequently be retrieved by an N-GET.

##### S.3.2.1.4 Status Codes.

Table S.3.2.2.4-1 defines the specific status code values that might be returned in a N-CREATE response. See PS3.7 for general response status codes.

Table S.3.2.2.4-1. SOP Class Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Failure | Failed: An Initiate Media Creation action has already been received for this SOP Instance. | A510

#### S.3.2.2 Initiate Media Creation

The Initiate Media Creation operation allows an SCU to request an SCP to create Interchange Media according to an already created Media Creation Management SOP Instance. An SCP shall use this operation to schedule the creation of Interchange Media. This operation shall be invoked through the N-ACTION primitive.

##### S.3.2.2.1 Action Information

The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Action Types and Action Information as specified in Table S.3.2.2.1-1.

Table S.3.2.2.1-1. Media Creation Request - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Initiate Media Creation | 1 | Number of Copies | (2000,0010) | 3/1
Request Priority | (2200,0020) | 3/3 See Section S.3.2.2.1.1

###### S.3.2.2.1.1 Priority

The Request Priority (2200,0020), if present, may be used by the SCP to prioritize a higher priority request over other pending lower priority requests.

##### S.3.2.2.2 Service Class User Behavior

The SCU shall use the N-ACTION primitive to request the SCP to create Interchange Media according to an already created Media Creation Management SOP Instance. Action Information is specified in Table S. 3.2.2.1-1.

Upon receipt of a successful N-ACTION Response Status Code from the SCP, the SCU now knows that the SCP has received the N-ACTION Initiate Media Creation request and will process the request.

Upon receipt of a failure N-ACTION Response Status Code from the SCP, the SCU now knows that the SCP will not process the Initiate Media Creation request. The actions taken by the SCU upon receiving the status is beyond the scope of this Standard.

At any time after receipt of the N-ACTION-Response, the SCU may release the association on which it sent the N-ACTION-Request.

### Note

1. An N-GET of the corresponding of the Media Creation Management SOP Class may be performed on the same or subsequent associations.

2. The duration for which the SOP Instance UID of an instance of the Media Creation Management SOP Class remains active once the request has been completed or has failed is implementation dependent, but should be sufficiently long to allow an SCU to determine the ultimate outcome of the request.

##### S.3.2.2.3 Service Class Provider Behavior

Upon receipt of the N-ACTION Initiate Media Creation request, the SCP shall return, via the N-ACTION response primitive, the N-ACTION Response Status Code applicable to the associated request. A success status conveys that the SCP has successfully scheduled the request.

### Note

1. The extent of validation of the contents of the request, the availability of the referenced Composite SOP Instances, support for the requested profiles and other checks that may determine the ultimate success or failure of the request are not specified by the Standard. In particular, a request may be immediately accepted successfully, but subsequently fail for some reason, or the N-ACTION response primitive may contain a status that reflects a more thorough (and prolonged) check.

2. How long any Composite Instances that have been transferred via the Storage Service Class to the SCP for the purpose of a Media Creation Request persist, is beyond the scope of the Standard. The Preserve Composite Instances After Media Creation (2200,000A) flag is provided as a hint only. Even if this flag is set, a subsequent request referencing some or all of the same instances may fail if the SCP had reason to flush its cache of instances in the interim, and the SCU may need to be prepared to re-send them.

3. How long the instance of the Media Creation Management SOP Class persists once the Execution Status (2100,0020) has been set to DONE or FAILED is beyond the scope of the Standard.

The N-ACTION implicitly creates or updates the Execution Status (2100,0020), Execution Status Info (2100,0030), Total Number of Pieces of Media Created (2200,000B), Failed SOP Sequence (0008,1198) and Referenced Storage Media Sequence (2200,000D) Attributes, which may subsequently be retrieved by an N-GET.

##### S.3.2.2.4 Status Codes

There are no specific status codes. See PS3.7 for response status codes.

#### S.3.2.3 Cancel Media Creation

The Cancel Media Creation operation allows an SCU to request an SCP to cancel a media creation request, whether or not it has begun to be processed. This operation shall be invoked through the N-ACTION primitive.

##### S.3.2.3.1 Action Information

The DICOM AEs that claim conformance to this SOP Class as an SCU and/or an SCP shall support the Action Types and Action Information as specified in Table S.3.2.3.1-1.

Table S.3.2.3.1-1. Media Creation Request - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Cancel Media Creation | 2 |  |  |

##### S.3.2.3.2 Service Class User Behavior

The SCU shall use the N-ACTION primitive to request the SCP to cancel the media creation request corresponding to the Affected SOP Instance UID in the N-ACTION request primitive, whether or not it has been initiated with an N-ACTION Initiate Media Creation request, and whether or not it has begun to be processed (i.e., is pending or in progress).

Upon receipt of a successful N-ACTION Response Status Code from the SCP, the SCU knows that the SCP has received the N-ACTION Cancel Media Creation request, has canceled any pending or in progress media creation, and deleted the Media Creation Management SOP Instance.

### Note

Successful cancellation implies that a subsequent N-GET of the corresponding Media Creation Management SOP Instance would fail.

Upon receipt of a failure N-ACTION Response Status Code from the SCP, the SCU knows that the SCP will not process the Cancel Media Creation request. The actions taken by the SCU upon receiving the status is beyond the scope of this Standard.

### Note

Cancellation failure implies that media creation has already completed (successfully or not), or will proceed. The status of the media creation request may still be obtained with an N-GET, unless the reason for failure was that the SOP Instance did not exist.

##### S.3.2.3.3 Service Class Provider Behavior

Upon receipt of the N-ACTION Cancel Media Creation request, the SCP shall return, via the N-ACTION response primitive, the N-ACTION Response Status Code applicable to the associated request. A success status conveys that the SCP has successfully canceled the request.

A failure status conveys that the SCP has failed to cancel the request, in which case the Execution Status (2100,0020), Execution Status Info (2100,0030), Total Number of Pieces of Media Created (2200,000B), Failed SOP Sequence (0008,1198) and Referenced Storage Media Sequence (2200,000D) Attributes may subsequently be retrieved by an N-GET.

##### S.3.2.3.4 Status Codes

Table S.3.2.3.4-1 defines the specific status code values that might be returned in a N-ACTION response. See PS3.7 for general response status codes.

Table S.3.2.3.4-1. Response Statuses

Service Status | Further Meaning | Status Codes
--- | --- | ---
Failure | Failed: Media creation request already completed. | C201
Failed: Media creation request already in progress and cannot be interrupted. | C202
Failed: Cancellation denied for unspecified reason. | C203

#### S.3.2.4 Get Media Creation Result

The Get Media Creation Result operation allows an SCU to request of an SCP the status of a media creation request. This operation shall be invoked through the N-GET primitive used in conjunction with the appropriate Media Creation Management SOP Instance corresponding to the creation request.

##### S.3.2.4.1 Attributes

The Application Entity that claims conformance to this SOP Class as an SCU may choose to interpret the Attributes maintained by the SCP that the SCU receives via the operations of the SOP Class. The Application Entity that claims conformance as an SCP to this SOP Class shall support the Attributes specified in Table S.3.2.4.1-1.

Table S.3.2.4.1-1. Media Creation Management SOP Class N-GET Attributes

Attribute Name | Tag | Requirement Type (SCU/SCP)
--- | --- | ---
Specific Character Set | (0008,0005) | 3/1C (Required if expanded or replacement character set is used)
Execution Status | (2100,0020) | 3/1
Execution Status Info | (2100,0030) | 3/1
Total Number of Pieces of Media Created | (2200,000B) | 3/1
Failed SOP Sequence | (0008,1198) | 3/2
Referenced Storage Media Sequence | (2200,000D) | 3/2
All Other Attributes of the Media Creation Management Module |  | 3/3

##### S.3.2.4.2 Service Class User

The SCU shall specify in the N-GET request primitive the UID of the Media Creation Management SOP Instance for which Attribute Values are to be returned. The SCU shall be permitted to request that Attribute Values be returned for any Media Creation Management SOP Class Attribute specified in Section S.3.2.1.1. Additionally, values may be requested for optional Media Creation Management Module Attributes.

The SCU shall specify the list of Media Creation Management SOP Class Attributes for which the Attribute Values are to be returned. The encoding rules for this list are specified in the N-GET request primitive specified in PS3.7.

In an N-GET operation, Sequence Attributes can only be requested in their entirety, and only the top level Sequence Attribute can be included in the request.

The SCU shall be capable of receiving all requested Attribute Values provided by the SCP in response to the N-GET indication primitive. The SCU may request Attribute values for optional Attributes that are not maintained by the SCP. In such a case the SCU shall function properly regardless of whether the SCP returns values for those Attributes or not. This Service Class Specification places no requirements on what the SCU shall do as a result of receiving this information.

### Note

In order to interpret accurately the character set used for Attribute values returned, it is recommended that the Attribute value for Specific Character Set (0008,0005) be requested in the N-GET request primitive.

##### S.3.2.4.3 Service Class Provider

This operation allows the SCU to request from the SCP, selected Attribute Values for a specific Media Creation Management SOP Instance. This operation shall be invoked through the use of the DIMSE N-GET Service used in conjunction with the appropriate Media Creation Management SOP Instance.

The SCP shall return, via the N-GET response primitive, the N-GET Response Status Code applicable to the associated request. Contingent on the N-GET Response Status, the SCP shall return, via the N-GET Response Primitive, Attribute Values for all requested Attributes maintained by the SCP (see Table S.3.2.4.1-1). The SCP shall not return Data Elements for optional Attributes that are not maintained by the SCP.

The SCP shall return the entire content of a Sequence if a Sequence Attribute is requested.

##### S.3.2.4.4 Status Codes

Table S.3.2.4.4-1 defines the specific status code values that might be returned in a N-GET response.

See PS3.7 for general response status codes.

Table S.3.2.4.4-1. Response Statuses

Service Status | Further Meaning | Response Status Codes
--- | --- | ---
Warning | Requested optional Attributes are not supported | 0001

### S.3.3 Media Creation Management SOP Class UID

The Media Creation Management SOP Class shall be uniquely identified by the Media Creation Management SOP Class UID, which shall have the value "1.2.840.10008.5.1.1.33".

## S.4 Conformance Requirements

Implementations claiming Standard SOP Class Conformance to the Media Creation Management SOP Class shall be conformant as described in this Section and shall include within their Conformance Statement information as described in this Section and sub-Sections.

An implementation may claim conformance to this SOP Class as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

### S.4.1 SCU Conformance

An implementation that is conformant to this SOP Class as an SCU shall meet conformance requirements for

- the operations and actions that it invokes

The mechanisms used by the SCU to transfer SOP Instances to the SCP using the Storage Service Class prior to initiating a request operation shall also be documented, and in particular the Transfer Syntaxes that may be proposed.

#### S.4.1.1 Operations

The SCU shall document in the Conformance Statement the actions and behavior that cause the SCU to generate an N-CREATE primitive (Create Media Creation Request), an N-ACTION primitive (Initiate Media Creation and Cancel Media Creation) or an N-GET primitive (Get Media Creation Result).

The SCU shall specify the SOP Class UIDs for which it may request media creation.

The SCU shall specify the Media Application Profiles for which it may request media creation.

The SCU shall specify if it supports the optional Storage Media File-Set ID & UID Attributes in the N-CREATE.

The SCU shall specify if it supports the optional Icon Image Sequence Attributes in the N-CREATE.

The SCU shall describe its use of expanded or replacement character sets, both in the N-CREATE, the N-GET and in its use of the Storage Service Class for composite instances.

The SCU shall specify whether or not it retries failed requests.

### Note

This allows the reader of a Conformance Statement to determine whether or not human intervention will be needed in the event of transient failures, or whether the SCU may be able to recover automatically.

The Conformance Statement shall be formatted as defined in PS3.2

### S.4.2 SCP Conformance

An implementation that is conformant to this SOP Class as an SCP shall meet conformance requirements for

- the operations and actions that it performs

The Storage Service Class mechanisms accepted by the SCP prior to receiving a request operation shall also be documented, and in particular the Transfer Syntaxes that may be accepted.

#### S.4.2.1 Operations

The SCP shall document in the Conformance Statement the behavior and actions of the SCP upon receiving the N-CREATE primitive (Create Media Creation Request), N-ACTION primitive (Initiate Media Creation and Cancel Media Creation) or the N-GET primitive (Get Media Creation Result).

The SCP shall specify the SOP Class UIDs for which it will accept media creation requests.

The SCP shall specify the Media Application Profiles for which it will accept media creation requests, and what default profiles it will use in the event that they are not specified by the SCU.

### Note

The forms of media that can be created are implicit in the list of Media Application Profiles supported, each of which is media-specific.

The SCP shall specify whether or not it supports creation of optional Icon Image Sequence Attributes in the DICOMDIR if none are supplied by the SCU.

The SCP shall specify the manner of use of label information, and in particular which:

- Attributes are extracted from the Composite Instances when so instructed

- barcode symbologies - if any - are supported

The SCP shall describe its use of expanded or replacement character sets, both in the N-CREATE, the N-GET and in its extraction of information from the Composite Instances for incorporation in the DICOMDIR and on the media label. The SCP shall describe its use of the Attributes both in the N-CREATE, and N-ACTION and the Composite Instances to create the media label.

The SCP shall specify if and how it supports the following optional Attributes in the N-CREATE and N-ACTION:

- Storage Media File-Set ID (0088,0130) & Storage Media File-Set UID (0088,0140)

- Media Disposition (2200,0004)

- Priority (2000,0020)

- Preserve Composite Instances After Media Creation (2200,000A)

The SCP shall specify the duration of persistence of received Composite Instances after a request has been processed successfully or unsuccessfully.

The SCP shall specify how long it will maintain:

- the result of the creation of media after the request has succeeded or failed

- the Media Creation Management Instances whose status is IDLE.

The SCP shall specify the action taken when a permanent failure (e.g., a media writing failure) or a transient failure (e.g., no empty media available) occurs, and their relationship with the media creation request status transaction.

### Note

For example, how many times the SCP will retry writing a new piece of media before setting the Execution Status (2100,0020) to FAILURE, how many media creation requests the SCP is able to queue, the SCP behavior when the request queue, if any, is full.

The SCP shall specify if it is able to split a media creation request over more than one piece of media, if the file-set doesn't fit on one.

The SCP shall specify if it is able to add to the created media Non-DICOM objects (e.g., html files, JPEG images), how these objects are organized, and how it interprets the Include Non-DICOM Objects (2200,0008) Attribute.

The SCP shall specify if it is able to add to the created media DICOM display applications, and how it interprets the Include Display Application (2200,0009) Attribute.

The Conformance Statement shall be formatted as defined in PS3.2.

# T Hanging Protocol Storage Service Class

See Annex GG.

### Note

The requirements of this section have been consolidated into the Non-Patient Object Storage Service Class (see Section GG.6.1).

# U Hanging Protocol Query/Retrieve Service Class

## U.1 Overview

### U.1.1 Scope

The Hanging Protocol Query/Retrieve Service Class defines an application-level class-of-service that facilitates access to Hanging Protocol composite objects. It provides query and retrieve/transfer capabilities similar to the Basic Worklist Management Service Class and Query/Retrieve Service Class.

### U.1.2 Conventions

See Conventions for the Basic Worklist Management Service (K.1.2).

### U.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Hanging Protocol Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of Hanging Protocol composite SOP Instances. The information is organized into a Hanging Protocol Information Model.

### U.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Hanging Protocol Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Hanging Protocol Query/Retrieve Service Class are implemented using the DIMSE-C C-FIND, C-MOVE and C-GET services as defined in PS3.7.

The semantics of the C-FIND and C-GET services are the same as those defined in the Service Definition of the Basic Worklist Management Service Class.

The semantics of the C-MOVE service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

## U.2 Hanging Protocol Information Model Definition

The Hanging Protocol Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

The Hanging Protocol Information Model is defined, with the Entity-Relationship Model Definition and Key Attributes Definition analogous to those defined in the Worklist Information Model Definition of the Basic Worklist Management Service.

## U.3 Hanging Protocol Information Model

The Hanging Protocol Information Model is based upon a one level entity:

- Hanging Protocol object instance

The Hanging Protocol object instance contains Attributes associated with the Hanging Protocol object IE of the Composite IODs as defined in PS3.3.

## U.4 DIMSE-C Service Groups

### U.4.1 C-FIND Operation

See the C-FIND Operation definition for the Basic Worklist Management Service Class (K.4.1), and substitute "Hanging Protocol" for "Worklist. The "Worklist" Search Method shall be used.

The SOP Class UID identifies the Hanging Protocol Information Model against which the C-FIND is to be performed. The Key Attributes and values allowable for the query are defined in the SOP Class definition for the Hanging Protocol Information Model.

### U.4.2 C-MOVE Operation

See the C-MOVE Operation definition for the Query/Retrieve Service Class (C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Hanging Protocol Query/Retrieve Service Class.

Query/Retrieve Level (0008,0052) is not relevant to the Hanging Protocol Query/Retrieve Service Class, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

### U.4.3 C-GET Operation

See the C-GET Operation definition for the Query/Retrieve Service Class (C.4.3). No Extended Behavior or Relational-Retrieve is defined for the Hanging Protocol Query/Retrieve Service Class.

Query/Retrieve Level (0008,0052) is not relevant to the Hanging Protocol Query/Retrieve Service Class, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

## U.5 Association Negotiation

See the Association Negotiation definition for the Basic Worklist Management Service Class (K.5).

## U.6 SOP Class Definitions

### U.6.1 Hanging Protocol Information Model

#### U.6.1.1 E/R Model

The Hanging Protocol Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Hanging Protocol Instance.

Figure U.6-1. Hanging Protocol Information Model E/R Diagram

#### U.6.1.2 Hanging Protocol Attributes

Table U.6-1 defines the Attributes of the Hanging Protocol Information Model:

Table U.6-1. Attributes for the Hanging Protocol Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Hanging Protocol Definition
Hanging Protocol Name | (0072,0002) | R | 1 | This Attribute shall be retrieved with Single Value, Wild Card or Universal matching.
Hanging Protocol Description | (0072,0004) | - | 1 |
Hanging Protocol Level | (0072,0006) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
Hanging Protocol Creator | (0072,0008) | - | 1 |
Hanging Protocol Creation DateTime | (0072,000A) | - | 1 |
Hanging Protocol Definition Sequence | (0072,000C) | R | 1 | This Attribute shall be retrieved with Sequence or Universal matching.
>Modality | (0008,0060) | R | 2 | This Attribute shall be retrieved with Single Value or Universal matching.
>Anatomic Region Sequence | (0008,2218) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>> Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>> Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Version | (0008,0103) | - | 3 |
>>Code Meaning | (0008,0104) | - | 1 |
>Laterality | (0020,0060) | R | 2 | This Attribute shall be retrieved with Single Value or Universal matching.
> Procedure Code Sequence | (0008,1032) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>> Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>> Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Version | (0008,0103) | - | 3 |
>>Code Meaning | (0008,0104) | - | 1 |
>Reason for Requested Procedure Code Sequence | (0040,100A) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>> Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>> Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Version | (0008,0103) | - | 3 |
>>Code Meaning | (0008,0104) | - | 1 |
Number of Priors Referenced | (0072,0014) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
Hanging Protocol User Identification Code Sequence | (0072,000E) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Version | (0008,0103) | - | 3 |
>Code Meaning | (0008,0104) | - | 1 |
Hanging Protocol User Group Name | (0072,0010) | R | 3 |
Hanging Protocol Environment
Number of Screens | (0072,0100) | R | 2 |
Nominal Screen Definition Sequence | (0072,0102) | - | 2 |
>Number of Vertical Pixels | (0072,0104) | - | 1 |
>Number of Horizontal Pixels | (0072,0106) | - | 1 |
>Display Environment Spatial Position | (0072,0108) | - | 1 |
>Screen Minimum Grayscale Bit Depth | (0072,010A) | - | 1C | Required if Screen Minimum Color Bit Depth (0072,010C) is not present.
>Screen Minimum Color Bit Depth | (0072,010C) | - | 1C | Required if Screen Minimum Grayscale Bit Depth (0072,010A) is not present.
>Application Maximum Repaint Time | (0072,010E) | - | 3 |

#### U.6.1.3 Conformance Requirements

An implementation may conform to one of the Hanging Protocol Information Model SOP Classes as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### U.6.1.3.1 SCU Conformance

###### U.6.1.3.1.1 C-FIND SCU Conformance

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes shall support queries against the Hanging Protocol Information Model using the C-FIND SCU Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.2 and Section U.4.1).

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCU shall state in its Conformance Statement whether it requests Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

###### U.6.1.3.1.2 C-MOVE SCU Conformance

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCU shall support transfers against the Hanging Protocol Information Model using the C-MOVE SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.2.1 and Section U.4.2).

###### U.6.1.3.1.3 C-GET SCU Conformance

An implementation that conforms to the Hanging Protocol Information Model - GET SOP Class as an SCU shall support transfers against the Hanging Protocol Information Model using the C-GET SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.2.1 and Section U.4.3).

##### U.6.1.3.2 SCP Conformance

###### U.6.1.3.2.1 C-FIND SCP Conformance

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCP shall support queries against the Hanging Protocol Information Model using the C-FIND SCP Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.3).

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCP shall state in its Conformance Statement whether it supports Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

###### U.6.1.3.2.2 C-MOVE SCP Conformance

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCP shall support transfers against the Hanging Protocol Information Model using the C-MOVE SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.3.1).

An implementation that conforms to one of the Hanging Protocol Information Model SOP Classes as an SCP, which generates transfers using the C-MOVE operation, shall state in its Conformance Statement the Hanging Protocol Storage Service Class SOP Class under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### U.6.1.3.2.3 C-GET SCP Conformance

An implementation that conforms to the Hanging Protocol Information Model - GET SOP Class as an SCP shall support transfers against the Hanging Protocol Information Model using the C-GET SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.3.1).

An implementation that conforms to the Hanging Protocol Information Model - GET SOP Class as an SCP, which generates transfers using the C-GET operation, shall state in its Conformance Statement the Hanging Protocol Storage Service Class SOP Class under which it will support the C-STORE sub-operations generated by the C-GET.

#### U.6.1.4 SOP Classes

The SOP Classes of the Hanging Protocol Information Model in the Hanging Protocol Query/Retrieve Service Class identify the Hanging Protocol Information Model, and the DIMSE-C operations supported. The following Standard SOP Classes are identified:

Table U.6.1.4-1. Hanging Protocol SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Hanging Protocol Information Model - FIND | 1.2.840.10008.5.1.4.38.2
Hanging Protocol Information Model - MOVE | 1.2.840.10008.5.1.4.38.3
Hanging Protocol Information Model - GET | 1.2.840.10008.5.1.4.38.4

# V Substance Administration Query Service Class (Normative)

## V.1 Overview

### V.1.1 Scope

The Substance Administration Query Service Class defines an application-level class-of-service that facilitates obtaining detailed information about substances or devices used in imaging, image-guided treatment, and related procedures. It also facilitates obtaining approval for the administration of a specific contrast agent or drug to a specific patient.

This Service Class is intended as part of a larger workflow that addresses patient safety in the imaging environment. This Service addresses only the communication protocol that allows a point of care device (imaging modality) to interrogate an SCP Application for information about an administered substance, or for verification of appropriateness of the substance for the patient. The SCP Application uses patient safety related data, such as allergies, current medications, appropriate dosages, patient condition indicated by lab results, etc., to respond to the queries; however, the mechanism of such use is beyond the scope of this Standard. How the point of care device uses the responses to the queries, e.g., by display to a user, or by locking of certain device functions, is also beyond the scope of this Standard.

### Note

1. The SCP of this Service Class is not necessarily a clinical decision support (CDS) system, but may be a gateway system between this DICOM Service and an HL7 or proprietary interface of a CDS system. Such implementation design is beyond the scope of the DICOM standard.

2. The Service will result in a Query response containing zero or one items. However, to facilitate implementation, the Service uses the general query mechanism supporting multiple item responses, as used in other DICOM query service classes.

### V.1.2 Conventions

Key Attributes serve two purposes; they may be used as Matching Key Attributes and Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5.

### V.1.3 Substance Administration Query Information Model

In order to serve as a Service Class Provider (SCP) of the Substance Administration Query Service Class, a DICOM Application Entity (AE) must be able to return information about the Attributes of a substance, device, or a substance administration act. This information is organized into well defined Substance Administration Query Information Models.

A specific SOP Class of the Substance Administration Query Service Class consists of an informative Overview, an Information Model Definition and a DIMSE-C Service Group. In this Service Class, the Information Model plays a role similar to an Information Object Definition (IOD) of other DICOM Service Classes.

### V.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Substance Administration Query Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Substance Administration Query Service Class are implemented using the DIMSE-C C-FIND service as defined in PS3.7.

Only a baseline behavior of the DIMSE-C C-FIND is used in the Service Class. Extended negotiation is not used.

The following description of the DIMSE-C C-FIND service provides a brief overview of the SCU/SCP semantics.

A C-FIND service conveys the following semantics:

- The SCU requests that the SCP perform a match for the Matching Keys and return values for the Return Keys that have been specified in the Identifier of the request, against the information that the SCP possesses relating to the Information Model specified in the SOP Class.

### Note

In this Annex, the term "Identifier" refers to the Identifier service parameter of the C-FIND service as defined in PS3.7.

- The SCP generates at most one C-FIND response for a match with an Identifier containing the values of all Matching Key Attributes and all known Return Key Attributes requested. This response shall contain a status of Pending.

- When the process of matching is complete, with zero or one match, a C-FIND response is sent with a status of Success and no Identifier.

- A Failure response to a C-FIND request indicates that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-CANCEL-FIND request at any time during the processing of the C-FIND service. The SCP will interrupt all matching and return a status of Canceled.

### Note

The SCU needs to be prepared to receive C-FIND responses sent by the SCP until the SCP finally processed the C-CANCEL-FIND request.

## V.2 Substance Administration Query Information Model Definition

The Substance Administration Query Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

Information Model Definitions for standard SOP Classes of the Substance Administration Query Service Class are defined in this Annex. A Substance Administration Query Information Model Definition contains:

- an Entity-Relationship Model Definition

- a Key Attributes Definition.

### V.2.1 Entity-Relationship Model Definition

Substance Administration Query Information Models consist of a single level that includes all Matching Key Attributes and all Return Key Attributes that may be sent from the SCU to the SCP in the request, and whose values are expected to be returned from the SCP to the SCU in the response (or Query items). The Matching Key Attribute values in the request specify the Query items that are to be returned in the response. All Key Attributes (the Matching Key Attributes and the Return Key Attributes) in the request determine which Attribute values are returned in the response for that Query.

### V.2.2 Attributes Definition

Attributes are defined for each entity in the internal Entity-Relationship Model. An Identifier in a C-FIND request shall contain values to be matched against the Attributes of the Entities in a Substance Administration Query Information Model. For any Query request, the set of entities for which Attributes are returned shall be determined by the set of Matching and Return Key Attributes specified in the Identifier.

#### V.2.2.1 Attribute Types

All Attributes of entities in a Substance Administration Query Information Model shall be specified both as a Matching Key Attribute (either required or optional) and as a Return Key Attribute.

##### V.2.2.1.1 Matching Key Attributes

The Matching Key Attributes are Keys, which select Query items to be included in a requested Query.

###### V.2.2.1.1.1 Required Matching Key Attributes

A Substance Administration Query Service SCP shall support matching based on values of all Required Matching Key Attributes of the C-FIND request.

###### V.2.2.1.1.2 Optional Matching Key Attributes

In the Substance Administration Query Information Model, a set of Attributes may be defined as Optional Matching Key Attributes. Optional Matching Key Attributes contained in the Identifier of a C-FIND request may induce two different types of behavior depending on support for matching by the SCP. If the SCP

- does not support matching on the Optional Matching Key Attribute, then the Optional Matching Key Attribute shall be ignored for matching but shall be processed in the same manner as a Return Key Attribute.

- supports matching of the Optional Matching Key Attribute, then the Optional Matching Key Attribute shall be processed in the same manner as a Required Matching Key.

### Note

1. The Conformance Statement of the SCP lists the Optional Matching Key Attributes that are supported for matching.

2. An SCU can not expect the SCP to support a match on an Optional Matching Key.

##### V.2.2.1.2 Return Key Attributes

The values of Return Key Attributes to be retrieved with the Query are specified with zero-length (universal matching) in the C-FIND request. SCPs shall support Return Key Attributes defined by a Substance Administration Query Information Model according to the Data Element Type (1, 1C, 2, 2C, 3) as defined in PS3.5.

Every Matching Key Attribute shall also be considered as a Return Key Attribute. Therefore the C-FIND response shall contain, in addition to the values of the requested Return Key Attributes, the values of the requested Matching Key Attributes.

### Note

1. The Conformance Statement of the SCP lists the Return Key Attributes of Type 3 that are supported.

2. An SCU may choose to supply any subset of Return Key Attributes.

3. An SCU can not expect to receive any Type 3 Return Key Attributes.

4. Return Key Attributes with VR of SQ may be specified either with zero-length, or with a zero-length item in the sequence.

#### V.2.2.2 Attribute Matching

The following types of matching, which are defined by the Query/Retrieve Service Class in Annex C, may be performed on Matching Key Attributes in the Substance Administration Query Service Class. Different Matching Key Attributes may be subject for different matching types. The Substance Administration Query Information Model defines the type of matching for each Required Matching Key Attribute. The Conformance Statement of the SCP shall define the type of matching for each Optional Matching Key Attribute. The types of matching are:

- Single Value Matching

- Sequence Matching

The following type of matching, which is defined by the Query/Retrieve Service Class in Annex C of this Part, shall be performed on Return Key Attributes in the Substance Administration Query Service Class.

- Universal Matching

See Section C.2.2.2 and subsections for specific rules governing of Matching Key Attribute encoding for and performing of different types of matching.

The Specific Character Set (0008,0005) Attribute may be present in the Identifier but is never matched, i.e., it is not considered a Matching Key Attribute. See Section C.2.2.2 for details.

## V.3 Query Information Models

Each Substance Administration Query Information Model is associated with one SOP Class. The following Substance Administration Query Information Models are defined:

- Product Characteristics Query Information Model

- Substance Approval Query Information Model

## V.4 DIMSE-C Service Group

One DIMSE-C Service is used in the construction of SOP Classes of the Substance Administration Query Service Class. The following DIMSE-C operation is used.

- C-FIND

### V.4.1 C-FIND Operation

SCPs of SOP Classes of the Substance Administration Query Service Class are capable of processing queries using the C-FIND operation as described in PS3.7. The C-FIND operation is the mechanism by which queries are performed. Matches against the keys present in the Identifier are returned in C-FIND responses.

#### V.4.1.1 C-FIND Service Parameters

##### V.4.1.1.1 SOP Class UID

The SOP Class UID identifies the Substance Administration Query Information Model against which the C-FIND 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-FIND operation.

##### V.4.1.1.2 Priority

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

##### V.4.1.1.3 Identifier

Both the C-FIND request and response contain an Identifier encoded as a Data Set (see PS3.5).

###### V.4.1.1.3.1 Request Identifier Structure

An Identifier in a C-FIND request shall contain

- Key Attributes values to be matched against the values of Attributes specified in that SOP Class.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Request Identifier. It shall not be included otherwise.

### Note

This means that Specific Character Set (0008,0005) is included if the SCU supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCU.

The Key Attributes and values allowable for the query shall be defined in the SOP Class definition for the corresponding Substance Administration Query Information Model.

###### V.4.1.1.3.2 Response Identifier Structure

The C-FIND response shall not contain Attributes that were not in the request or specified in this section.

An Identifier in a C-FIND response shall contain:

- Key Attributes with values corresponding to Key Attributes contained in the Identifier of the request (Key Attributes as defined in Section V.2.2.1.)

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Response Identifier. It shall not be included otherwise. The C-FIND SCP is not required to return responses in the Specific Character Set requested by the SCU if that character set is not supported by the SCP. The SCP may return responses with a different Specific Character Set.

### Note

This means that Specific Character Set (0008,0005) is included if the SCP supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCP.

- Conditionally, the Attribute HL7 Structured Document Reference Sequence (0040,A390) and its subsidiary Sequence Items as specified in the SOP Common Module (see PS3.3). This Attribute shall be included if HL7 Structured Documents are referenced within the Identifier, e.g., in the Pertinent Documents Sequence (0038,0100).

##### V.4.1.1.4 Status

Table V.4-1 defines the status code values that might be returned in a C-FIND response. General status code values and fields related to status code values are defined for C-FIND DIMSE Service in PS3.7.

Table V.4-1. C-FIND Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
Error: Data Set Does Not Match SOP Class | A900 | (0000,0901) (0000,0902)
Failed: Unable to process | Cxxx | (0000,0901) (0000,0902)
Cancel | Matching terminated due to Cancel request | FE00 | None
Success | Matching is complete - No final Identifier is supplied. | 0000 | None
Pending | Matches are continuing - Current Match is supplied and any Optional Keys were supported in the same manner as Required Keys. | FF00 | Identifier
Matches are continuing - Warning that one or more Optional Keys were not supported for existence for this Identifier. | FF01 | Identifier

### Note

Status Codes are returned in DIMSE response messages (see PS3.7). The code values stated in column "Status Codes" are returned in Status Command Element (0000,0900).

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 V.4-1.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table V.4-1 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.

#### V.4.1.2 C-FIND SCU Behavior

All C-FIND SCUs shall be capable of generating query requests that meet the requirements of the Query Search Method (see Section V.4.1.3.1).

Required Keys and Optional Keys associated with the Query may be contained in the Identifier.

An SCU conveys the following semantics using the C-FIND requests and responses:

- The SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information it possesses of the Query specified in the request.

- The SCU shall interpret Pending responses to convey the Attributes of a match of an item.

- The SCU shall interpret a response with a status equal to Success, Failure, or Cancel to convey the end of Pending responses.

- The SCU shall interpret a Failure response to a C-FIND request as an indication that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND. The SCU shall recognize a status of Cancel to indicate that the C-FIND-CANCEL was successful.

#### V.4.1.3 C-FIND SCP Behavior

All C-FIND SCPs shall be capable of processing queries that meet the requirements of the Query Search (see Section V.4.1.3.1).

An SCP conveys the following semantics using the C-FIND requests and responses:

- The SCP is requested to perform a match of all the keys specified in the Identifier of the request, against the information it possesses. Attribute matching is performed using the key values specified in the Identifier of the C-FIND request as defined in Section V.2.

- The SCP generates at most one C-FIND response for a match using the "Query" Search method. Such a response shall contain an Identifier whose Attributes contain values from the match. The response shall contain a status of Pending.

- When matching is complete and any match has been sent, the SCP generates a C-FIND response that contains a status of Success. A status of Success shall indicate that a response has been sent for any match known to the SCP.

### Note

1. No Identifier is contained in a response with a status of Success. For a complete definition, see PS3.7.

2. When there are no matches, then no responses with a status of Pending are sent, only a single response with a status of Success.

- The SCP shall generate a response with a status of Failure if it is unable to process the request. A Failure response shall contain no Identifier.

- If the SCP receives a C-FIND-CANCEL indication before it has completed the processing of the matches it shall interrupt the matching process and return a status of Cancel.

##### V.4.1.3.1 Query Search Method

The following procedure is used to generate matches.

The key match Attributes contained in the Identifier of the C-FIND request are matched against the values of the Key Attributes for each Query entity. For each entity for which the Attributes match all of the specified match Attributes, construct an Identifier. This Identifier shall contain all of the values of the Attributes for this entity that match those in the C-FIND request. Return a response for each such Identifier. If there are no matching keys, then there are no matches; return a response with a status equal to Success and with no Identifier.

## V.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure specified in PS3.7 shall be used to negotiate the supported SOP Classes.

Support for the SCP/SCU role selection negotiation is optional. The SOP Class Extended Negotiation is not used by this Service Class.

## V.6 SOP Class Definitions

### V.6.1 Product Characteristics Query SOP Class

#### V.6.1.1 Product Characteristics Query SOP Class Overview

The Product Characteristics Query SOP class defines an application-level class of service that facilitates the communication of detailed information about drugs, contrast agents, or devices identified by a bar code or similar identifier. The detailed information is intended to be used both for automated processing and for presentation to a system operator.

The Product Characteristics Query SOP class supports the following example use cases:

- Obtain the active ingredient, concentration, or other parameters of a contrast agent for inclusion in the image SOP Instances created during use of the agent, or for setting up image acquisition parameters (e.g., ultrasound transducer frequency)

- Obtain the size parameters of a device (e.g., a catheter) for use in calibrating images that show that device

- Obtain a network reference for an online copy of the "product label" (regulated prescribing and use data) for a drug, contrast agent, or device.

#### V.6.1.2 Product Characteristics Query Information Model

##### V.6.1.2.1 E/R Model

The Product Characteristics Query Information Model is represented by the Entity Relationship diagram shown in figure Section V.6 -1.

Figure V.6-1. Product Characteristics E-R Diagram

There is only one Information Entity in the model, which is the Product. The Attributes of a Product can be found in the following Module in PS3.3.

- Product Characteristics Module

##### V.6.1.2.2 Product Characteristics Query Attributes

Table V.6-1 defines the Attributes of the Product Characteristics Query Information Model:

Table V.6-1. Attributes for the Product Characteristics Query Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | ---
Product Package Identifier | (0044,0001) | R | 1 | Shall be retrieved with Single Value Matching only.
Product Type Code Sequence | (0044,0007) | - | 1 |
>Code Value | (0008,0100) | - | 1 |
>Coding Scheme Designator | (0008,0102) | - | 1 |
>Code Meaning | (0008,0104) | - | 1 |
Product Name | (0044,0008) | - | 1 |
Product Expiration DateTime | (0044,000B) | - | 2 |
Product Parameter Sequence | (0044,0013) | - | 2 |
>Value Type | (0040,A040) | - | 1 |
>Concept Name Code Sequence | (0040,A043) | - | 1 |
>>Code Value | (0008,0100) | - | 1 |
>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>Code Meaning | (0008,0104) | - | 1 |
>All other Attributes of the Product Parameter Sequence |  | - | 1C | Conditional on value of Value Type (0040,A040); See PS3.3 Content Item Macro.
All other Attributes of the Product Characteristics Module |  | - | 3 |

The Product Package Identifier (0044,0001) might not be globally unique and might conflict with other identifiers used within the scope of the institution.

### Note

The package identifiers are typically unique within the scope of the substance administration management systems. This is a warning that they are not UIDs.

#### V.6.1.3 Conformance Requirements

An implementation may conform to the Product Characteristics Query SOP Class as an SCU or an SCP. The Conformance Statement shall be in the format defined in PS3.2.

##### V.6.1.3.1 SCU Conformance

An implementation that conforms to the Product Characteristics Query SOP Class shall support queries against the Information Model described in Section V.6.1.2 using the baseline C-FIND SCU Behavior described in Section V.4.1.2.

An implementation that conforms to the Product Characteristics Query SOP Class as an SCU shall state in its Conformance Statement the Return Key Attributes it requests, and how those Attributes are used in the application.

An implementation that conforms to the Product Characteristics Query SOP Class as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

##### V.6.1.3.2 SCP Conformance

An implementation that conforms to the Product Characteristics Query SOP Class shall support queries against the Product Characteristics Query Information Model described in Section V.6.1.2 using the C-FIND SCP Behavior described in Section V.4.1.3.

An implementation that conforms to the Product Characteristics Query SOP Class as an SCP shall state in its Conformance Statement the Return Key Attributes that it supports.

An implementation that conforms to the Product Characteristics Query SOP Class as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding responses.

#### V.6.1.4 SOP Class

The Product Characteristics Query SOP Class in the Substance Administration Service Class identifies the Product Characteristics Query Information Model, and the DIMSE-C operations supported. The following Standard SOP Class is identified:

Table V.6.1.4-1. Product Characteristics Query SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Product Characteristics Query Information Model - FIND | 1.2.840.10008.5.1.4.41

### V.6.2 Substance Approval Query SOP Class

#### V.6.2.1 Substance Approval Query SOP Class Overview

The Substance Approval Query SOP Class defines an application-level class of service that allows a device at the point of care to obtain verification of the appropriateness of contrast agents and other drugs administered during a procedure, based on the substance label barcode and the patient ID. The response is an authorization to proceed, or a warning, or a contra-indication for presentation to the system operator.

The Substance Approval Query SOP class supports the following example use cases:

- Obtain verification that administration of a specific drug or contrast agent for an image acquisition is appropriate for the patient

- Obtain verification that the implantation of a specific device under imaging guidance is appropriate for the patient

The Substance Approval Query SOP Class does not specify the mechanism used by the SCP to verify such appropriateness of administration (e.g., by comparison to allergy information in the patient's electronic health record). The duration of validity of an approval beyond the time of the response is not defined by the Standard.

#### V.6.2.2 Substance Approval Query Information Model

##### V.6.2.2.1 E/R Model

The Substance Approval Query Information Model is represented by the Entity Relationship diagram shown in Figure V.6-2.

Figure V.6-2. Substance Approval E-R Diagram

Figure V.6-2

The Attributes of the Information Entities can be found in the following Modules in PS3.3.

- Patient Identification Module

- Patient Demographics Module

- Visit Identification Module

- Substance Administration Module

- Substance Approval Module

- Product Characteristics Module

Only selected Attributes of these Modules are used in the Substance Approval Query Information Model.

The Information Model is used in a bottom-up manner in the query; i.e., given a Product and a Patient, or alternatively a Product and a Visit, for a proposed Substance Administration act at the current time, find the Approval.

The Visit IE is included in the Information Model to support those institutions that identify patients (e.g., on a bar coded wristband) by Admission ID (i.e., the ID of the Visit), rather than Patient ID. This allows automation of query construction using a scan of the Admission ID. The Admission ID can be mapped to the Patient ID by the SCP for the purpose of the performing the query matching.

### Note

1. The Visit is identified by the Admission ID (0038,0010) Attribute, but in the "Model of the Real World for the Purpose of Modality-IS Interface" (see PS3.3), the Visit is subsidiary to the Patient; hence the Admission ID may only be unique within the context of the patient, not within the context of the institution. The use of the Admission ID Attribute to identify the Visit (and hence the Patient) is only effective if the Admission ID is unique within the context of the institution.

2. Certain institutions, e.g., ambulatory imaging centers that do not "admit" patients, may use the Imaging Service Request Identifier, or Accession Number, as an equivalent of the Admission ID. The SCU of this Query Service does not need to know the true origin or nature of the identifier, only that it is passed in the Query in the Admission ID (0038,0010) Attribute.

3. There is conceptually a datetime of administration Attribute of the Substance Administration act, which is implicitly assumed to be approximately the time of the query in this SOP Class.

4. There is conceptually a dose Attribute of the Product entity, which is the entire product identified by the bar code, and the request is for approval of administration of the entire product.

##### V.6.2.2.2 Substance Approval Query Attributes

Table V.6-2 defines the Attributes of the Substance Approval Query Information Model.

Table V.6-2. Attributes for the Substance Approval Query Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | ---
Patient
Patient's Name | (0010,0010) | O | 2 |
Patient ID | (0010,0020) | R | 1 | Shall be retrieved with Single Value Matching only. One or both of Patient ID (0010,0020) and Admission ID (0038,0010) shall be present as a Matching Key in the Query
Issuer of Patient ID | (0010,0021) | O | 2 |
Issuer of Patient ID Qualifiers Sequence | (0010,0024) | O | 3 |
>All Attributes of the Issuer of Patient ID Qualifiers Sequence |  | O | 3 |
Patient's Birth Date | (0010,0030) | - | 2 |
Patient's Sex | (0010,0040) | - | 2 |
Visit
Admission ID | (0038,0010) | R | 2 | Shall be retrieved with Single Value Matching only. One or both of Patient ID (0010,0020) and Admission ID (0038,0010) shall be present as a Matching Key in the Query
Issuer of Admission ID Sequence | (0038,0014) | O | 3 |
>Local Namespace Entity ID | (0040,0031) | O | 1C | Required if Universal Entity ID (0040,0032) is not present; may be present otherwise
>Universal Entity ID | (0040,0032) | O | 1C | Required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise.
>Universal Entity ID Type | (0040,0033) | O | 1C | Required if Universal Entity ID (0040,0032) is present.
Product
Product Package Identifier | (0044,0001) | R | 1 | Shall be retrieved with Single Value Matching only. Shall be present as a Matching Key in the Query.
Substance Administration
Administration Route Code Sequence | (0054,0302) | R | 1 | Shall be present as a Matching Key in the Query.
>Code Value | (0008,0100) | R | 1 |
>Coding Scheme Designator | (0008,0102) | R | 1 |
>Code Meaning | (0008,0104) | - | 1 |
Approval
Substance Administration Approval | (0044,0002) | - | 1 |
Approval Status Further Description | (0044,0003) | - | 2 |
Approval Status DateTime | (0044,0004) | - | 1 |

One or both of Patient ID (0010,0020) and Admission ID (0038,0010) shall be present as a Matching Key in the Query.

Product Package Identifier (0044,0001) shall be present as a Matching Key in the Query. The Product Package Identifier might not be globally unique and might conflict with other identifiers used within the scope of the institution.

### Note

The package identifiers are typically unique within the scope of the substance administration management systems. This is a warning that they are not UIDs.

Administration Route Code Sequence (0054,0302) shall be present as a Matching Key in the Query, and a single Item shall be present in that Sequence with Code Value (0008,0100) and Coding Scheme Designator (0008,0102) as Matching Keys.

##### V.6.2.2.3 Substance Approval Query Responses

A Query response may have a status of Success or Failure (see Section V.4.1.1.4). A Failure Query response carries no semantics about the existence or status of approval of the Substance Administration.

A successful Query response will contain zero or one Pending response items. The case of zero Pending responses carries the semantics of no matching Approval Information Entity found, i.e., that the SCP cannot determine an approval, rather than that the substance administration is approved or disapproved. In this case a decision on substance administration needs to be made by the healthcare provider.

### Note

Zero Pending responses may occur due do inability of the SCP to match the patient ID, product ID or route of administration.

In the case of one Pending response, the matching Approval Information Entity will explicitly convey the Substance Administration Approval (0044,0002) value of APPROVED, WARNING, or CONTRA_INDICATED.

#### V.6.2.3 Conformance Requirements

An implementation may conform to the Substance Approval Query SOP Class as an SCU or an SCP. The Conformance Statement shall be in the format defined in PS3.2.

##### V.6.2.3.1 SCU Conformance

An implementation that conforms to the Substance Approval Query SOP Class shall support queries against the Information Model described in Section V.6.2.2 using the baseline C-FIND SCU Behavior described in Section V.4.1.2.

An implementation that conforms to the Substance Approval Query SOP Class as an SCU shall state in its Conformance Statement how the Query Attributes are used in the application, and how the application displays the returned Attributes, in particular the values of Substance Administration Approval (0044,0002) and Approval Status Further Description (0044,0003). It shall state how it indicates a Query response with zero Pending items, or a Failure status.

An implementation that conforms to the Substance Approval Query SOP Class as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

##### V.6.2.3.2 SCP Conformance

An implementation that conforms to the Substance Approval Query SOP Class shall support queries against the Substance Approval Query Information Model described in Section V.6.2.2 using the C-FIND SCP Behavior described in Section V.4.1.3. It shall support all of the Attributes specified in the Information Model.

An implementation that conforms to the Substance Approval Query SOP Class as an SCP shall state in its Conformance Statement how it processes Required and Optional Matching Key Attributes. It shall state how it obtains the values for the Return Key Attributes.

An implementation that conforms to the Substance Approval Query SOP Class as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

#### V.6.2.4 SOP Class

The Substance Approval Query SOP Class in the Substance Administration Service Class identifies the Substance Approval Query Information Model, and the DIMSE-C operations supported. The following Standard SOP Class is identified:

Table V.6.2.4-1. Substance Approval Query SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Substance Approval Query Information Model - FIND | 1.2.840.10008.5.1.4.42

# W Color Palette Storage Service Class

See Annex GG.

### Note

The requirements of this section have been consolidated into the Non-Patient Object Storage Service Class (see Section GG.6.2).

# X Color Palette Query/Retrieve Service Class

## X.1 Overview

### X.1.1 Scope

The Color Palette Query/Retrieve Service Class defines an application-level class-of-service that facilitates access to Color Palette composite objects.

### X.1.2 Conventions

See Conventions for the Basic Worklist Management Service (K.1.2).

### X.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Color Palette Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of Color Palette composite SOP Instances. The information is organized into a Color Palette Information Model.

### X.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Color Palette Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Color Palette Query/Retrieve Service Class are implemented using the DIMSE-C C-FIND, C-MOVE and C-GET services as defined in PS3.7.

The semantics of the C-FIND service are the same as those defined in the Service Definition of the Basic Worklist Management Service Class.

The semantics of the C-MOVE and C-GET services are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

## X.2 Color Palette Information Model Definition

The Color Palette Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

The Color Palette Information Model is defined, with the Entity-Relationship Model Definition and Key Attributes Definition analogous to those defined in the Worklist Information Model Definition of the Basic Worklist Management Service.

## X.3 Color Palette Information Model

The Color Palette Information Model is based upon a one level entity:

- Color Palette object instance

The Color Palette object instance contains Attributes associated with the Color Palette object IE of the Composite IODs as defined in PS3.3.

## X.4 DIMSE-C Service Groups

### X.4.1 C-FIND Operation

See the C-FIND Operation definition for the Basic Worklist Management Service Class (K.4.1), and substitute "Color Palette" for "Worklist. The "Worklist" Search Method shall be used.

The SOP Class UID identifies the Color Palette Information Model against which the C-FIND is to be performed. The Key Attributes and values allowable for the query are defined in the SOP Class definition for the Color Palette Information Model.

### X.4.2 C-MOVE Operation

See the C-MOVE Operation definition for the Query/Retrieve Service Class (C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Color Palette Query/Retrieve Service Class.

Query/Retrieve Level (0008,0052) is not relevant to the Color Palette Query/Retrieve Service Class, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

### X.4.3 C-GET Operation

See the C-GET Operation definition for the Query/Retrieve Service Class (C.4.3). No Extended Behavior or Relational-Retrieve is defined for the Color Palette Query/Retrieve Service Class.

Query/Retrieve Level (0008,0052) is not relevant to the Color Palette Query/Retrieve Service Class, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

## X.5 Association Negotiation

See the Association Negotiation definition for the Basic Worklist Management Service Class (K.5).

## X.6 SOP Class Definitions

### X.6.1 Color Palette Information Model

#### X.6.1.1 E/R Model

The Color Palette Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Color Palette Instance.

Figure X.6-1. Color Palette Information Model E/R Diagram

#### X.6.1.2 Color Palette Attributes

Table X.6-1 defines the Attributes of the Color Palette Information Model:

Table X.6-1. Attributes for the Color Palette Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 | This Attribute shall be retrieved with Single Value matching.
SOP Instance UID | (0008,0018) | U | 1 | This Attribute shall be retrieved with Single Value matching.
Color Palette Definition
Content Label | (0070,0080) | R | 1 | This Attribute shall be retrieved with Single Value, Wild Card or Universal matching.
Content Description | (0070,0081) | - | 2 |
Content Creator's Name | (0070,0084) | - | 2 |
Alternate Content Description Sequence | (0070,0087) | - | 3 |
>Content Description | (0070,0081) | - | 1 |
>Language Code Sequence | (0008,0006) | - | 1 |
>>Code Value | (0008,0100) | - | 1 |
>>Coding Scheme Designator | (0008,0102) | - | 1 |
>>Coding Scheme Version | (0008,0103) | - | 3 |
>>Code Meaning | (0008,0104) | - | 1 |

#### X.6.1.3 Conformance Requirements

An implementation may conform to one of the Color Palette Information Model SOP Classes as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### X.6.1.3.1 SCU Conformance

###### X.6.1.3.1.1 C-FIND SCU Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes shall support queries against the Color Palette Information Model using the C-FIND SCU Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.2 and Section X.4.1).

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCU shall state in its Conformance Statement whether it requests Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

###### X.6.1.3.1.2 C-MOVE SCU Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCU shall support transfers against the Color Palette Information Model using the C-MOVE SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.2.1 and Section X.4.2).

###### X.6.1.3.1.3 C-GET SCU Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCU shall support transfers against the Color Palette Information Model using the C-GET SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.2.1 and Section X.4.3).

##### X.6.1.3.2 SCP Conformance

###### X.6.1.3.2.1 C-FIND SCP Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP shall support queries against the Color Palette Information Model using the C-FIND SCP Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.3).

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP shall state in its Conformance Statement whether it supports Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

###### X.6.1.3.2.2 C-MOVE SCP Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP shall support transfers against the Color Palette Information Model using the C-MOVE SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.3.1).

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP, which generates transfers using the C-MOVE operation, shall state in its Conformance Statement the Color Palette Storage Service Class SOP Class under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### X.6.1.3.2.3 C-GET SCP Conformance

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP shall support transfers against the Color Palette Information Model using the C-GET SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.3.1).

An implementation that conforms to one of the Color Palette Information Model SOP Classes as an SCP, which generates transfers using the C-GET operation, shall state in its Conformance Statement the Color Palette Storage Service Class SOP Class under which it shall support the C-STORE sub-operations generated by the C-GET.

#### X.6.1.4 SOP Classes

The SOP Classes of the Color Palette Information Model in the Color Palette Query/Retrieve Service Class identify the Color Palette Information Model, and the DIMSE-C operations supported. The following Standard SOP Classes are identified:

Table X.6.1.4-1. Color Palette SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Color Palette Information Model - FIND | 1.2.840.10008.5.1.4.39.2
Color Palette Information Model - MOVE | 1.2.840.10008.5.1.4.39.3
Color Palette Information Model - GET | 1.2.840.10008.5.1.4.39.4

# Y Instance and Frame Level Retrieve SOP Classes (Normative)

## Y.1 Overview

### Y.1.1 Scope

Composite Instance Root Retrieve Service is a service within the DICOM Query/Retrieve Service class defined in Annex C.The retrieve capability of this service allows a DICOM AE to retrieve Composite Instances or selected frames from a remote DICOM AE over a single Association or request the remote DICOM AE to initiate a transfer of Composite Object Instances or selected frames from image objects to another DICOM AE.

The Enhanced Multi-Frame Image Conversion Extended Negotiation Option of the DICOM Query/Retrieve Service class defined in Annex C is also supported for the Composite Instance Root Retrieve Service.

### Y.1.2 Composite Instance Root Retrieve Information Model

Retrievals are implemented against the Composite Instance Root Retrieve Information Model, as defined in this Annex of the DICOM Standard. A specific SOP Class of the Query/Retrieve Service Class consists of an Information Model Definition and a DIMSE-C Service Group.

### Y.1.3 Service Definition

Two peer DICOM AEs implement a SOP Class of the Composite Instance Root Retrieve Service with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Composite Instance Root Retrieve Service are implemented using the DIMSE-C C-MOVE and C-GET services as defined in PS3.7.

The following descriptions of the DIMSE-C C-GET and C-MOVE services provide a brief overview of the SCU/SCP semantics:

1. A C-MOVE service conveys the following semantics:

   - The SCU supplies Unique and Frame Range Key values to identify the requested SOP Instance(s). The SCP creates new SOP instances if necessary and then initiates C-STORE sub-operations for the corresponding storage SOP Instances. These C-STORE sub-operations occur on a different Association than the C-MOVE service. The SCP role of the Retrieve SOP Class and the SCU role of the Storage SOP Class may be performed by different applications that may or may not reside on the same system. Initiation mechanism of C-STORE sub-operations is outside of the scope of DICOM standard.

   - The SCP may optionally generate responses to the C-MOVE with status equal to Pending during the processing of the C-STORE sub-operations. These C-MOVE responses indicate the number of Remaining C-STORE sub-operations and the number of C-STORE sub-operations returning the status of Success, Warning, and Failed.

   - When the number of Remaining C-STORE sub-operations reaches zero, the SCP generates a final response with a status equal to Success, Warning, Failed, or Refused. This response shall indicate the number of C-STORE sub-operations returning the status of Success, Warning, and Failed. If any of the sub-operations was successful then a Successful UID list shall be returned. If the status of a C-STORE sub-operation was Failed a UID List shall be returned.

   - The SCU may cancel the C-MOVE service by issuing a C-MOVE-CANCEL request at any time during the processing of the C-MOVE. The SCP terminates all incomplete C-STORE sub-operations and returns a status of Canceled.

2. A C-GET service conveys the following semantics:

   - The SCU supplies Unique and Frame Range Key values to identify the requested SOP Instance(s). The SCP creates new SOP instances if necessary and then generates C-STORE sub-operations for the corresponding storage SOP Instances. These C-STORE sub-operations occur on the same Association as the C-GET service and the SCU/SCP roles are reversed for the C-STORE.

   - The SCP may optionally generate responses to the C-GET with status equal to Pending during the processing of the C-STORE sub-operations. These C-GET responses indicate the number of remaining C-STORE sub-operations and the number of C-STORE sub-operations returning the status of Success, Warning, and Failed.

   - When the number of Remaining C-STORE sub-operations reaches zero, the SCP generates a final response with a status equal to Success, Warning, Failed, or Refused. This response shall indicate the number of C-STORE sub-operations returning the status of Success, Warning, and Failed. If the status of any C-STORE sub-operation was Failed a UID List shall be returned.

   - The SCU may cancel the C-GET service by issuing a C-GET-CANCEL request at any time during the processing of the C-GET. The SCP terminates all incomplete C-STORE sub-operations and returns a status of Canceled.

## Y.2 Composite Instance Root Retrieve Information Model Definition

The Composite Instance Root Retrieve Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

### Note

This SOP Class identifies the class of the Composite Instance Root Retrieve Information Model (i.e., not the SOP Class of the stored SOP Instances for which the SCP has information).

Information Model Definitions for standard SOP Classes of the Composite Instance Root Retrieve Service are defined in this Annex. A Composite Instance Root Retrieve Information Model Definition contains:

- Entity-Relationship Model Definition

- Key Attributes Definition

### Y.2.1 Entity-Relationship Model Definition

For any Composite Instance Root Retrieve Information Model, an Entity-Relationship Model defines a hierarchy of entities, with Attributes defined for each level in the hierarchy (e.g., Composite Instance, Frame)..

### Y.2.2 Attributes Definition

Attributes and matching shall be as defined in section Section C.2.2

## Y.3 Standard Composite Instance Root Retrieve Information Model

One standard Composite Instance Root Retrieve Information Model is defined in this Annex. The Composite Instance Root Retrieve Information Model is associated with a number of SOP Classes. The following hierarchical Composite Instance Root Retrieve Information Model is defined:

- Composite Instance Root

### Y.3.1 Composite Instance Root Information Model

The Composite Instance Root Information Model is based upon a two level hierarchy:

- Composite Instance

- Frame

The Composite Instance level is the top level and contains only the SOP Instance UID. The Frame level is below the Composite Instance level and contains only the Attributes that refer to a selection of the frames from a single multi-frame image object.

### Y.3.2 Construction and Interpretation of Frame Range Keys

The following rules for the use of Frame Range Keys apply to both an SCU creating such keys and to an SCP interpreting them.

#### Y.3.2.1 Frame List definitions

The selection of frames to be included in a new created SOP Instance made in response to a FRAME level Composite Instance Root Retrieve request shall be defined by one of the mechanisms defined in this section, and the list of frames so specified shall be referred to as the "Frame List".

### Note

1. Re-ordering of frames is not supported, and order of the frames in the Frame List will always be the same as in the original SOP Instance.

2. New allowable frame selection mechanisms may be defined in the future by the addition of new SOP classes

##### Y.3.2.1.1 Simple Frame List

Simple Frame List (0008,1161) is a multi-valued Attribute containing a list of frame numbers, each specifying a frame to be included in the returned object. The first frame of the source instance shall be denoted as frame number 1.

The frame numbers in the list shall not contain any duplicates, and shall increase monotonically.

### Note

Due to the use of UL for this element, a maximum of 16383 values may be specified, as only a 2 byte length is available when an explicit VR Transfer Syntax is used.

##### Y.3.2.1.2 Calculated Frame List

Calculated Frame List (0008,1162) is a multi-valued Attribute containing a list of 3-tuples, each representing a sub-range of frames to be included in the returned object. The first frame of the source instance shall be denoted as frame number 1.For each 3-tuple: .

- The first number shall be the frame number of the first frame of the sub-range.

- The second number shall be the upper limit of the sub-range, and shall be greater than or equal to the first number.

- The third number shall be the increment between requested frames of the sub-range. This shall be greater than zero.

The difference between the first and second numbers is not required to be an exact multiple of the increment.

If the difference between the first and second numbers is an exact multiple of the increment, then the last frame of the sub-range shall be the second number.

If the first number is greater than the number of frames in the referenced SOP Instance then that sub-range shall be ignored.

The sub-ranges shall be non-overlapping such that the sequence of frame numbers determined by concatenating all the sub-ranges shall not contain any duplicates, and shall increase monotonically. A value of FFFFFFFFH or any value greater than the number of frames in the referenced SOP Instance as the second value shall denote the end of the set of frames in the referenced SOP Instance, and may only occur in the last 3-tuple.

### Note

For example, if the Calculated Frame List contains 6 values, 2, 9, 3, 12, FFFFFFFFH, 5 and is applied to an Instance containing 25 frames. The resulting Frame List will contain the values 2, 5, 8, 12, 17 and 22.

##### Y.3.2.1.3 Time Range

Time Range (0008,1163) contains the start and end times to be included in the returned object. Times are in seconds, relative to the value of the Content Time (0008,0033) in the parent object.

The range shall include all frames between the specified times including any frames at the specified times.

The range may be expanded as a consequence of the format in which the information is stored. Where such expansion occurs, any embedded audio data shall be similarly selected. Under all circumstances, the returned Composite SOP Instance shall retain the relationship between image and audio data.

### Note

For MPEG-2, MPEG-4 AVC/H.264 and HEVC/H.265 this would be to the nearest surrounding Key Frames.

For JPEG 2000 Part 2, this would be to nearest surrounding precinct or tile boundary

Time Range shall only be used to specify extraction from SOP instances where the times of frames can be ascertained using one or more of the following Attributes:

- Frame Time (0018,1063)

- Frame Time Vector (0018,1065)

- Frame Reference DateTime (0018,9151) in the Frame Content Sequence (0020,9111)

### Y.3.3 New Instance Creation At the Frame Level

When a C-MOVE or C-GET operation is performed on a source Composite Instance at the FRAME level then the SCP shall create a new Composite Instance according to the following rules:

- The new Composite Instance shall be extracted from the source Composite Instance specified by the SOP Instance UID Unique Key present at the Composite Instance Level.

- The new Composite Instance shall be an instance of the same SOP Class as the source Composite Instance.

- The new Composite Instance shall have a new SOP Instance UID.

- The new Composite Instance shall be a valid SOP Instance.

### Note

The new Composite Instance is required to be internally consistent and valid. This may require the SCP to make consistent modification of any Attributes that reference frames or the relationship between them such as start time, time offsets, and modifying the Per-frame Functional Group Sequence (5200,9230).

- The new Composite Instance shall contain the frames from the source Composite Object as requested in the Requested Frame List. The Requested Frame List shall be interpreted according to the rules in Section Y.3.2. The frames shall be in the same order as in the source Composite Instance.

- The new Composite Instance shall include the Frame Extraction Module, which shall contain appropriate Attributes from the identifier of the C-GET or C-MOVE request that caused this instance to be created. If the Frame Extraction Module already exists in the source Composite Instance, then a new item shall be appended as an additional item into the Frame Extraction Sequence.

- The new Composite Instance shall contain the Contributing Equipment Sequence (0018,A001). If the source Composite Object contains the Contributing Equipment Sequence, then a new Item shall be appended to the copy of the sequence in the new Composite Instance, and if the source Composite Object does not contain the Contributing Equipment Sequence, then it shall be created, containing one new Item. In either case, the new Item shall describe the equipment that is extracting the frames, and the Purpose of Reference Code Sequence (0040,A170) within the Item shall be (109105, DCM, "Frame Extracting Equipment").

### Note

The existing General Equipment Module cannot be used to hold details of the creating equipment, as it is a Series level Module. The new Composite Instance is part of the same Series as the source Instance, and therefore the Series level information cannot be altered.

- The new Composite Instance shall have the same Patient, Study and Series level information as the source Instance, including Study and Series Instance UIDs.

- The new Composite Instance shall have the same values for the Attributes of the Image Pixel Module of the source Composite Instance except that the Pixel Data Provider URL (0028,7FE0) Attribute shall not be present,Pixel Data (7FE0,0010) shall be replaced by the subset of frames, as specified in section Section Y.3.3, and Number of Frames (0028,0008) shall contain the number of frames in the new Composite Instance.

- The new Composite Instance shall have the same values for other Type 1 and Type 2 Image level Attributes that are not otherwise specified. Other Attributes may be included in the new Composite Instance if consistent with the new Composite Instance.

### Note

In most cases private Attributes should not be copied unless their full significance is known. See Annex ZZ “Implant Template Description” in PS3.17 for more guidance.

- The new Composite Instance shall not be contained in a Concatenation. This means that it shall not contain a Concatenation UID (0020,9161) Attribute or other Concatenation Attributes. If the existing Composite Instance contains such Attributes, they shall not be included in the new Composite Instance.

## Y.4 DIMSE-C Service Groups

A single DIMSE-C Service is used in the construction of SOP Classes of the Composite Instance Root Retrieve Service. The following DIMSE-C operation is used:

- C-MOVE

- C-GET

### Y.4.1 C-MOVE Operation

SCUs of the Composite Instance Root Retrieve Service shall 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 or new SOP Instances extracted from such 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 CMOVE 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 may or may not be the originator of the C-MOVE operation.

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

#### Y.4.1.1 C-MOVE Service Parameters

##### Y.4.1.1.1 SOP Class UID

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.

##### Y.4.1.1.2 Priority

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.

##### Y.4.1.1.3 Identifier

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

### Note

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.

###### Y.4.1.1.3.1 Request Identifier Structure

An Identifier in a C-MOVE 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

- Conditionally, the Attribute Query/Retrieve View (0008,0053). This Attribute may be included if Enhanced Multi-Frame Image Conversion has accepted during Association Extended Negotiation. It shall not be included otherwise.

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.1.1.4 Status

Table Y.4-1 defines the 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 Y.4-1. C-MOVE 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)
Refused: Move Destination unknown | A801 | (0000,0902)
Error: Data Set does not match SOP Class | A900 | (0000,0901) (0000,0902)
Failed: Unable to process | Cxxx | (0000,0901) (0000,0902)
Failed: None of the frames requested were found in the SOP Instance | AA00 | (0000,0902)
Failed: Unable to create new object for this SOP class | AA01 | (0000,0902)
Failed: Unable to extract frames | AA02 | (0000,0902)
Failed: Time-based request received for a non-time-based original SOP Instance. | AA03 | (0000,0902)
Failed: 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)

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 Y.4-1.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table Y.4-1 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.

##### Y.4.1.1.5 Number of Remaining Sub-Operations

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

##### Y.4.1.1.6 Number of Completed Sub-Operations

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

##### Y.4.1.1.7 Number of Failed Sub-Operations

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

##### Y.4.1.1.8 Number of Warning Sub-Operations

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

#### Y.4.1.2 C-MOVE SCU Behavior

##### Y.4.1.2.1 Baseline Behavior of SCU

An SCU conveys the following semantics with a C-MOVE 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 defined in Section Y.3.2.

- The SCU shall accept C-MOVE 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-MOVE 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-MOVE operation. The SCU shall interpret a status of:

  - Success to indicate that all sub-operations were successfully completed

  - Failure or Refused to indicate all sub-operations were unsuccessful

  - Warning in all other cases. The Number of Completed Sub-Operations (0000,1021), Number of Warning Sub-Operations (0000,1023), Number of Failed Sub-Operations (0000,1022) can be used to obtain more detailed information.

- The SCU may cancel the C-MOVE operation by issuing a C-MOVE-CANCEL request at any time during the processing of the C-MOVE request. A C-MOVE response with a status of Canceled shall indicate to the SCU that the retrieve was canceled. Optionally, the C-MOVE 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-MOVE-CANCEL request.

### Note

For FRAME level C-MOVE operations, the application receiving the C-STORE sub-operations will receive a new SOP Instance with a different SOP Instance UID from the one included in the C-MOVE request. If it is required to link the received instance to the request, then it may be necessary to inspect the Frame Extraction Sequence of the instance received, to compare the original Instance UID and Requested Frame List to those in the request.

##### Y.4.1.2.2 Extended Behavior of SCU

The extended behavior of the SCU shall be as specified in Section C.4.2.2.2, except that Relational-retrieve shall not be supported.

#### Y.4.1.3 C-MOVE SCP Behavior

##### Y.4.1.3.1 Baseline Behavior of SCP

An SCP conveys the following semantics with a C-MOVE 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-MOVE request.

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

- The SCP shall either re-use an established and compatible Association or establish a new Association for the C-STORE sub-operations

- The SCP shall initiate C-STORE sub-operations over the Association for the identified or newly created SOP Instances.

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

- Optionally, the SCP may generate responses to the C-MOVE 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-MOVE response shall contain:

  - Success if all sub-operations were successfully completed

  - Failure if all sub-operations were unsuccessful

  - Warning in all other cases.

- The SCP may receive a C-MOVE-CANCEL request at any time during the processing of the C-MOVE request. The SCP shall interrupt all C-STORE sub-operation processing and return a status of Canceled in the C-MOVE response. The C-MOVE 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-MOVE-CANCEL request.

- If the SCP manages images in multiple alternate encodings (see Section 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.

##### Y.4.1.3.2 Extended Behavior of SCP

The extended behavior of the SCP shall be as specified in Section C.4.2.3.2, except that Relational-retrieve shall not be supported.

### 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 PS3.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 Section C.4.3.1.3.2.

### Note

The Identifier is specified as U in the definition of the C-GET primitive in PS3.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

- Conditionally, the Attribute Query/Retrieve View (0008,0053). This Attribute may be included if Enhanced Multi-Frame Image Conversion has accepted during Association Extended Negotiation. It shall not be included otherwise.

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-2

Table Y.4-2. 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 Section 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 Section 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 Section 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 Section C.4.3.1.8.

#### Y.4.2.2 C-GET SCU Behavior

##### Y.4.2.2.1 Baseline Behavior of SCU

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 Section 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:

  - Success to indicate that all sub-operations were successfully completed

  - Failure or Refused to indicate all sub-operations were unsuccessful

  - Warning in all other cases. The Number of Completed Sub-Operations (0000,1021), Number of Warning Sub-Operations (0000,1023), Number of Failed Sub-Operations (0000,1022) can be used to obtain more detailed information.

- 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.2.2 Extended Behavior of SCU

The extended behavior of the SCU shall be as specified in Section C.4.3.2.2, except that Relational-retrieve shall not be supported.

#### Y.4.2.3 C-GET SCP Behavior

##### Y.4.2.3.1 Baseline Behavior of SCP

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 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:

  - Success if all sub-operations were successfully completed

  - Failure if all sub-operations were unsuccessful

  - Warning in all other cases.

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

##### Y.4.2.3.2 Extended Behavior of SCP

The extended behavior of the SCP shall be as specified in Section C.4.3.3.2, except that Relational-retrieve shall not be supported.

## Y.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. AEs supporting DICOM Query/Retrieve SOP Classes utilize Association establishment negotiation by defining the use of Application Association Information. See PS3.7 for an overview of Association negotiation.

SOP Classes of the Composite Instance Root Retrieve Service, which include retrieval services based on the C-MOVE and C-GET operations, use the SCP/SCU Role Selection Sub-Item to identify the SOP Classes that may be used for retrieval.

### Y.5.1 Association Negotiation for C-MOVE and C-GET SOP Classes

Rules are as specified in Section C.5.3, except that the extended negotiation sub-item, if used, shall be used as defined in Section Y.5.1.1.

### Note

1. Though converted images may be specified by their SOP Instance UID in the Request Identifier, which is always at or below the instance level, there remains a need for extended negotiation and specification of the Query/Retrieve View in order to assure that referential integrity is maintained within the returned SOP Instances (e.g., that a reference to a SOP Instance UID is to a converted image or not, as appropriate).

2. Relational-retrieval is not applicable to these SOP Classes, hence the Extended Negotiation Sub-Item does not include the use of that byte.

#### Y.5.1.1 SOP Class Extended Negotiation

The SOP Class Extended Negotiation allows, at Association establishment, peer DICOM AEs to exchange application Association information defined by specific SOP Classes. This is achieved by defining the Service-class-application-information field. The Service-class-application-information field is used to define support for Enhanced Multi-Frame Image Conversion.

This negotiation is optional. If absent, the default condition shall be:

- no Enhanced Multi-Frame Image Conversion support

The Association-requester, for each SOP Class, may use one SOP Class Extended Negotiation Sub-Item. The SOP Class is identified by the corresponding Abstract Syntax Name (as defined by PS3.7) followed by the Service-class-application-information field. This field defines:

- Enhanced Multi-Frame Image Conversion support by the Association-requester

The Association-acceptor, for each SOP Class Extended Negotiation Sub-Item offered, either accepts the Association-requester proposal by returning the same value (1) or turns down the proposal by returning the value (0).

If the SOP Class Extended Negotiation Sub-Item is not returned by the Association-acceptor then Enhanced Multi-Frame Image Conversion is not supported (default condition).

If the SOP Class Extended Negotiation Sub-Items do not exist in the A-ASSOCIATE indication they shall be omitted in the A-ASSOCIATE response.

##### Y.5.1.1.1 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-RQ)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. Table Y.5.1-1 defines the Service-class-application-information field for the C-MOVE and C-GET operations.

Table Y.5.1-1. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-RQ

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Unused | Reserved - shall be 0
2 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

##### Y.5.1.1.2 SOP Class Extended Negotiation Sub-Item Structure (A-ASSOCIATE-AC)

The SOP Class Extended Negotiation Sub-Item consists of a sequence of mandatory fields as defined by PS3.7. Table Y.5.1-2 defines the Service-class-application-information field for the C-MOVE and C-GET operations.

Table Y.5.1-2. SOP Class Extended Negotiation Sub-Item (Service-Class-Application-Information Field) - A-ASSOCIATE-AC

Item Bytes | Field Name | Description of Field
--- | --- | ---
1 | Unused | Reserved - shall not be tested.
2 | Enhanced Multi-Frame Image Conversion | This byte field defines whether or not the Attribute Query/Retrieve View (0008,0053) shall be used to adjust the view returned in queries to consider conversion to or from Enhanced Multi-Frame Images. It shall be encoded as an unsigned binary integer and shall use one of the following values 0 - Query/Retrieve View not supported 1 - Query/Retrieve View supported

## Y.6 SOP Class Definitions

### Y.6.1 Composite Instance Root SOP Class Group

In the Composite Instance Root Retrieve Only Information Model, the information is arranged into two levels that correspond to one of the two values in element (0008,0052) shown in Table Y.6.1-1.

Table Y.6.1-1. Retrieve Level Values for Composite Instance Root

Retrieve Level | Value in (0008,0052)
--- | ---
Composite Instance | IMAGE
Frame | FRAME

### Note

The use of the word "IMAGE" rather than "Composite Instance" is historical to allow backward compatibility with previous versions of the standard. It should not be taken to mean that Composite Instances of other than image type are not included at the level indicated by the value IMAGE.

#### Y.6.1.1 Composite Instance Root Retrieve Only Information Model

##### Y.6.1.1.1 E/R Model

The Composite Instance Root Retrieve Only Information Model may be represented by the entity relationship diagram shown in Figure Y.6-1

Figure Y.6-1. Composite Instance Root Information Model E/R Diagram

##### Y.6.1.1.2 Composite Instance Level

Table Y.6-1 defines the keys at the Composite Instance level of the Composite Instance Root Query/Retrieve Information model.

Table Y.6-1. Composite Instance Level Keys for the Composite Instance Root Query/Retrieve Information Model

Attribute Name | Tag | Matching Key Type
--- | --- | ---
SOP Instance UID | (0008,0018) | U

##### Y.6.1.1.3 Frame Level

Table Y.6-2 defines the keys at the Frame level of the Composite Instance Root Query/Retrieve Information Model. One and only one of the frame level keys listed in Table Y.6-2 shall be present in a FRAME level request

Table Y.6-2. Frame Level Keys for the Composite Instance Root Query/Retrieve Information Model

Attribute Name | Tag | Condition
--- | --- | ---
Simple Frame List | (0008,1161) | Required if Calculated Frame List and Time Range are not present
Calculated Frame List | (0008,1162) | Required if Simple Frame List and Approximate Frame Range are not present
Time Range | (0008,1163) | Required if Simple Frame List and Calculated Frame List are not present

##### Y.6.1.1.4 Scope of the C-MOVE or C-GET Commands and Sub-Operations

A C-MOVE or C-GET request may be performed to any level of the Query/Retrieve Model. A C-MOVE or C-GET where the Query/Retrieve level is the:

IMAGE level indicates that selected individual Composite Instances shall be transferred

FRAME level indicates that a single new Composite Instance shall be created and transferred

### Note

More than one entity may be retrieved if the Query/Retrieve Level is IMAGE using List of UID matching, but if the Query/Retrieve Level is FRAME then only a single entity may be retrieved.

#### Y.6.1.2 Conformance Requirements

An implementation may conform to one of the Composite Instance Root Retrieve SOP Classes as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### Y.6.1.2.1 SCU Conformance

###### Y.6.1.2.1.1 C-MOVE SCU Conformance

An implementation that conforms to one of the Composite Instance Root Retrieve SOP Classes as an SCU shall support transfers against the Retrieve Information Model described in Section Y.6.1.1 using the C-MOVE SCU Behavior described in Section Y.4.1.2. An implementation that conforms to one of the SOP Classes of the Composite Instance Root SOP Class Group as an SCU, and that generates retrievals using the C-MOVE operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C- MOVE.

###### Y.6.1.2.1.2 C-GET SCU Conformance

An implementation that conforms to one of the Composite Instance Root Retrieve SOP Classes as an SCU shall support retrievals against the Retrieve Information Model described in Section Y.6.1.1 using the C-GET SCU Behavior described in Section Y.4.2.2. An implementation that conforms to one of the SOP Classes of the Composite Instance Root SOP Class Group as an SCU, which generates retrievals using the C-GET operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

##### Y.6.1.2.2 SCP Conformance

An implementation that conforms to one of the Composite Instance Root Retrieve SOP Classes as an SCP for C-GET operations shall:1) support both levels of the Composite Instance Root Retrieve Only Information Model

2) support all three Frame Level keys

3) describe in its conformance statement the transformations it applies to a multi-frame Composite Instance when creating a new Composite Instance as defined in Section Y.3.3.

###### Y.6.1.2.2.1 C-MOVE SCP Conformance

An implementation that conforms to one of the Composite Instance Root Retrieve SOP Classes as an SCP shall support retrievals against both levels of the Retrieve Information Model described in Section Y.6.1.1 using the C-MOVE SCP Behavior described in Section Y.4.1.3. An implementation that conforms to one of the SOP Classes of the Composite Instance Root SOP Class Group as an SCP, which satisfies retrievals using the C- MOVE operation shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C- MOVE.

###### Y.6.1.2.2.2 C-GET SCP Conformance

An implementation that conforms to one of the Composite Instance Root Retrieve SOP Classes as an SCP shall support retrievals against both levels of the Retrieve Information Model described in Section Y.6.1.1 using the C-GET SCP Behavior described in Section Y.4.2.3. An implementation that conforms to one of the SOP Classes of the Composite Instance Root SOP Class Group as an SCP, and that satisfies retrievals using the C-GET operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

#### Y.6.1.3 SOP Classes

The SOP Classes in the Composite Instance Root SOP Class Group of the Query/Retrieve Service Class identify the Composite Instance Root Retrieve Only Information Model, and the DIMSE-C operations supported. The Standard SOP Classes are listed in Table Y.6.1.3-1.

Table Y.6.1.3-1. SOP Classes for Composite Instance Query/Retrieve Root

SOP Class Name | SOP Class UID
--- | ---
Composite Instance Root Retrieve - MOVE | 1.2.840.10008.5.1.4.1.2.4.2
Composite Instance Root Retrieve - GET | 1.2.840.10008.5.1.4.1.2.4.3

# Z Composite Instance Retrieve Without Bulk Data SOP Classes (Normative)

## Z.1 Overview

### Z.1.1 Scope

Composite Instance Retrieve Without Bulk Data Service is a service within the DICOM Query/Retrieve Service class defined in Annex C.The retrieve capability of this service allows a DICOM AE to retrieve Composite Instances without retrieving their pixel data or other potentially large Attributes as defined in Section Z.1.3.

The Enhanced Multi-Frame Image Conversion Extended Negotiation Option of the DICOM Query/Retrieve Service class defined in Annex C is also supported for the Composite Instance Root Retrieve Service.

### Z.1.2 Composite Instance Retrieve Without Bulk Data Information Model

Retrievals are implemented against the Composite Instance Retrieve Without Bulk Data Information Model, as defined in this Annex of the DICOM Standard. A specific SOP Class of the Query/Retrieve Service Class consists of an Information Model Definition and a DIMSE-C Service Group.

### Z.1.3 Attributes Not Included

The Attributes that shall not be included in the top level of the Data set sent by an SCP of this Service are as defined in Table Z.1-1

Table Z.1-1. Attributes Not to Be Included in Instances Sent

Attribute Name | Tag
--- | ---
Pixel Data | (7FE0,0010)
Float Pixel Data | (7FE0,0008)
Double Float Pixel Data | (7FE0,0009)
Pixel Data Provider URL | (0028,7FE0)
Spectroscopy Data | (5600,0020)
Overlay Data | (60xx,3000)
Curve Data | (50xx,3000)
Audio Sample Data | (50xx,200C)
Encapsulated Document | (0042,0011)

### Note

This implies that the pixel data within Icon Image Sequence (0088,0200) Items will be preserved.

The Waveform Data (5400,1010) Attribute shall not be included within the Waveform Sequence (5400,0100).

### Z.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of the Composite Instance Retrieve Without Bulk Data Service with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Composite Instance Retrieve Without Bulk Data Service are implemented using the DIMSE-C C-GET service as defined in PS3.7.

The following descriptions of the DIMSE-C C-GET service provide a brief overview of the SCU/SCP semantics:

1. A C-GET service conveys the following semantics:

   - The SCP shall identify a set of Entities at the level of the retrieval based upon the values in the Unique Keys in the Identifier of the C-GET request. The SCP shall then generate C-STORE sub-operations for the corresponding storage SOP Instances, but shall not include Attributes as described in Section Z.1.3 in the data sent during those sub-operations. These C-STORE sub-operations occur on the same Association as the C-GET service and the SCU/SCP roles are reversed for the C-STORE.

     ### Note

     If the source instance does not contain any of the Attributes described in Section Z.1.3 then, the version sent via the C-STORE sub-operation would be identical to the original data. This is not an error.

   - The SCP may optionally generate responses to the C-GET with status equal to Pending during the processing of the C-STORE sub-operations. These C-GET responses indicate the number of remaining C-STORE sub-operations and the number of C-STORE sub-operations returning the status of Success, Warning, and Failed.

   - When the number of Remaining C-STORE sub-operations reaches zero, the SCP generates a final response with a status equal to Success, Warning, Failed, or Refused. This response shall indicate the number of C-STORE sub-operations returning the status of Success, Warning, and Failed. If the status of any C-STORE sub-operation was Failed a UID List shall be returned.

   - The SCU may cancel the C-GET service by issuing a C-GET-CANCEL request at any time during the processing of the C-GET. The SCP terminates all incomplete C-STORE sub-operations and returns a status of Canceled.

## Z.2 Composite Instance Retrieve Without Bulk Data Information Model Definition

The Composite Instance Retrieve Without Bulk Data Information Model is identified by the SOP Class negotiated at Association establishment time. The SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

### Note

This SOP Class identifies the class of the Composite Instance Retrieve Without Bulk Data Information Model (i.e., not the SOP Class of the stored SOP Instances for which the SCP has information).

Information Model Definitions for standard SOP Classes of the Composite Instance Retrieve Without Bulk Data Service are defined in this Annex. A Composite Instance Retrieve Without Bulk Data Information Model Definition contains:

- Entity-Relationship Model Definition

- Key Attributes Definition

### Z.2.1 Entity-Relationship Model Definition

For any Composite Instance Retrieve Without Bulk Data Information Model, an Entity-Relationship Model defines a hierarchy of entities, with Attributes defined for each level in the hierarchy (e.g., Composite Instance, Frame)..

### Z.2.2 Attributes Definition

Attributes and matching shall be as defined in section Section C.2.2

## Z.3 Standard Composite Instance Retrieve Without Bulk Data Information Model

One standard Composite Instance Retrieve Without Bulk Data Information Model is defined in this Annex. The Composite Instance Retrieve Without Bulk Data Information Model is associated with a single SOP Class. The following Composite Instance Retrieve Without Bulk Data Information Model is defined:

- Retrieve Without Bulk Data

### Z.3.1 Composite Instance Retrieve Without Bulk Data Information Model

The Composite Instance Retrieve Without Bulk Data Information Model is based upon a one level hierarchy:

- Composite Instance

The Retrieve Without Bulk Data Information Model may be represented by the entity relationship diagram shown in Figure Z.3.1-1.

Figure Z.3.1-1. Retrieve Without Bulk Data Information Model E/R Diagram

The Composite Instance level is the only level and contains only the SOP Instance UID.

## Z.4 DIMSE-C Service Groups

A single DIMSE-C Service is used in the construction of SOP Classes of the Composite Instance Retrieve Without Bulk Data Service. The following DIMSE-C operation is used:

- C-GET

### Z.4.1 C-GET Operation

SCUs of the Composite Instance Retrieve Without Bulk Data Service shall generate retrievals using the C-GET operation as described in PS3.7. The C-GET operation allows an application entity to instruct another application entity to transfer SOP Instances without the Attributes as described in Section Z.1.3 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.

#### Z.4.2.1 C-GET Service Parameters

##### Z.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.

##### Z.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.

##### Z.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 Section C.4.3.1.3.2.

### Note

The Identifier is specified as U in the definition of the C-GET primitive in PS3.7 but is specialized for use with this service.

###### Z.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)

- Conditionally, the Attribute Query/Retrieve View (0008,0053). This Attribute may be included if Enhanced Multi-Frame Image Conversion has accepted during Association Extended Negotiation. It shall not be included otherwise.

Query/Retrieve Level (0008,0052) shall be IMAGE.

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 are defined in the SOP Class definition for the Query/Retrieve Information Model.

##### Z.4.2.1.4 Status

Table Z.4-1 defines the status code values that might be returned in a C-GET response. General status code values and fields related to status code values are defined for C-GET DIMSE Service in PS3.7.

Table Z.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)
Error: Data Set does not match SOP Class | A900 | (0000,0901) (0000,0902)
Failed: Unable to process | Cxxx | (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)

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 Y.4-2.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table Y.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.

##### Z.4.2.1.5 Number of Remaining Sub-Operations

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

##### Z.4.2.1.6 Number of Completed Sub-Operations

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

##### Z.4.2.1.7 Number of Failed Sub-Operations

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

##### Z.4.2.1.8 Number of Warning Sub-Operations

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

#### Z.4.2.2 C-GET SCU and C-STORE SCP Behavior

##### Z.4.2.2.1 Baseline Behavior of SCU

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

- The SCU shall specify one Instance UID or a list of Instance UIDs.

- 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 SCP of the Storage Service Class shall not store the incomplete SOP Instance; rather the behavior is implementation defined.

- 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:

  - Success to indicate that all sub-operations were successfully completed

  - Failure or Refused to indicate all sub-operations were unsuccessful

  - Warning in all other cases. The Number of Completed Sub-Operations (0000,1021), Number of Warning Sub-Operations (0000,1023), Number of Failed Sub-Operations (0000,1022) can be used to obtain more detailed information.

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

- The SCP of the Storage Service Class shall not return a status of "Error: Data set does not match SOP Class" (A9xx) or "Warning: Data set does not match SOP Class" (B007) due to the absence of the Attributes described in Section Z.1.3.

##### Z.4.2.2.2 Extended Behavior of SCU

The extended behavior of the SCU shall be as specified in Section C.4.3.2.2, except that Relational-retrieve shall not be supported.

#### Z.4.2.3 C-GET SCP and C-STORE SCU Behavior

##### Z.4.2.3.1 Baseline Behavior of SCP

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

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

- The SCP shall initiate C-STORE sub-operations for the identified SOP Instances, but shall not include in this C-STORE sub-operation the Attributes described in section Section Z.1.3. The SCP of the Query/Retrieve Service Class shall serve as an SCU of the Storage Service Class.

- Apart from the Attributes listed in section Section Z.1.3, the SOP Instance sent via the C-STORE sub-operation shall be unchanged, and no corresponding changes to other Attributes shall be made.

### Note

In particular, the Study, Series and SOP Instance UIDs and SOP Class UID will not be altered.

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

- 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:

  - Success if all sub-operations were successfully completed

  - Failure if all sub-operations were unsuccessful

  - Warning in all other cases.

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

##### Z.4.2.3.2 Extended Behavior of SCP

The extended behavior of the SCP shall be as specified in Section C.4.3.3.2, except that Relational-retrieve shall not be supported.

## Z.5 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. AEs supporting DICOM Query/Retrieve SOP Classes utilize Association establishment negotiation by defining the use of Application Association Information. See PS3.7 for an overview of Association negotiation.

SOP Classes of the Composite Instance Retrieve Without Bulk Data Service, which include retrieval services based on the C-GET operation, use the SCP/SCU Role Selection Sub-Item to identify the SOP Classes that may be used for retrieval.

### Z.5.1 Association Negotiation for C-GET SOP Classes

Rules are as specified in Section C.5.3, except that the extended negotiation sub-item, if used, shall be used as defined in Section Y.5.1.1.

### Note

1. Though converted images may be specified by their SOP Instance UID in the Request Identifier, which is always at the instance level, there remains a need for extended negotiation and specification of the Query/Retrieve View in order to assure that referential integrity is maintained within the returned SOP Instances (e.g., that a reference to a SOP Instance UID is to a converted image or not, as appropriate).

2. Relational-retrieval is not applicable to this SOP Class, hence the Extended Negotiation Sub-Item does not include the use of that byte.

## Z.6 SOP Class Definitions

### Z.6.1 Composite Instance Retrieve Without Bulk Data SOP Class Group

In the Composite Instance Retrieve Without Bulk Data Only Information Model, only a single Retrieve Level is used.

Table Z.6.1-1. Retrieve Level Value for Retrieve Without Bulk Data

Retrieve Level | Value in (0008,0052)
--- | ---
Composite Instance | IMAGE

### Note

The use of the word "IMAGE" rather than "Composite Instance" is historical to allow backward compatibility with previous versions of the standard. It should not be taken to mean that Composite Instances of other than image type are not included at the level indicated by the value IMAGE.

#### Z.6.1.1 Composite Instance Retrieve Without Bulk Data Information Model

##### Z.6.1.1.1 E/R Model

The Composite Instance Retrieve Without Bulk Data Only Information Model has only a single level: IMAGE.

##### Z.6.1.1.2 Composite Instance Level

Table Z.6-1 defines the keys at the Composite Instance level of the Composite Instance Retrieve Without Bulk Data Query/Retrieve Information model.

Table Z.6-1. Composite Instance Level Keys for the Composite Instance Root Query/Retrieve Information Model

Attribute Name | Tag | Matching Key Type
--- | --- | ---
SOP Instance UID | (0008,0018) | U

##### Z.6.1.1.3 Scope of the C-GET Commands and Sub-Operations

A C-GET request may only be performed at the IMAGE level of the Query/Retrieve Model. A C-GET indicates that selected individual Composite Instances, without bulk data Attributes shall be transferred.

#### Z.6.1.2 Conformance Requirements

An implementation may conform to one of the SOP Classes of the Composite Instance Retrieve Without Bulk Data SOP Class Group as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

##### Z.6.1.2.1 SCU Conformance

An implementation that conforms to one of the SOP Classes of the Composite Instance Retrieve Without Bulk Data SOP Class Group as an SCU shall support retrievals against the Query/Retrieve Information Model described in Section Z.6.1.1 using the C-GET SCU Behavior described in Section Z.4.2.2. An implementation that conforms to one of the SOP Classes of the Composite Instance Retrieve Without Bulk Data SOP Class Group as an SCU, and that generates retrievals using the C-GET operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

##### Z.6.1.2.2 SCP Conformance

An implementation that conforms to one of the SOP Classes of the Composite Instance Retrieve Without Bulk Data SOP Class Group as an SCP shall support retrievals against both levels of the Retrieve Information Model described in Section Z.6.1.1 using the C-GET SCP Behavior described in Section Z.4.2.3. An implementation that conforms to one of the SOP Classes of the Composite Instance Retrieve Without Bulk Data SOP Class Group as an SCP, and that satisfies retrievals using the C-GET operation, shall state in its Conformance Statement the Storage Service Class SOP Classes under which it shall support the C-STORE sub-operations generated by the C-GET.

#### Z.6.1.3 SOP Classes

The SOP Classes in the Composite Instance Retrieve Without Bulk Data SOP Class Group of the Query/Retrieve Service Class identify the Composite Instance Retrieve Without Bulk Data Only Information Model, and the DIMSE-C operations supported. The Standard SOP Classes are listed in Table Z.6.1.3-1.

Table Z.6.1.3-1. SOP Classes for Composite Instance Query/Retrieve Root

SOP Class Name | SOP Class UID
--- | ---
Composite Instance Retrieve Without Bulk Data - GET | 1.2.840.10008.5.1.4.1.2.5.3

# AA Ophthalmic Refractive Measurements Storage SOP Classes(Normative)

## AA.1 Scope

Refractive instruments are the most commonly used instruments in eye care. At present many of them have the capability for digital output, but their data is most often addressed by manual input into a paper or electronic record. Lensometry, Autorefraction, Keratometry, Subjective Refraction, and Visual Acuity Measurements SOP Classes support devices such as lensometers, auto-refractors, keratometers, autophoropters, and autoprojectors.

## AA.2 Behavior of a SCP

For a device that is both a SCU and a SCP of these Storage SOP Classes, in addition to the behavior for the Storage Service Class specified in Section B.2.2, the following additional requirements are specified for Structured Reporting Storage SOP Classes:

- A SCP of these SOP Class shall support Level 2 Conformance as defined in Section B.4.1.

### Note

This requirement means that all Type 1, Type 2, and Type 3 Attributes defined in the Information Object Definition and Private Attributes associated with the SOP Class will be stored and may be accessed.

# BB Implant Template Query/Retrieve Service Classes

## BB.1 Overview

### BB.1.1 Scope

The Implant Template Query/Retrieve Service Classes define application-level classes-of-service that facilitate access to Implant Template and Implant Assembly Template composite objects.

### BB.1.2 Conventions

Key Attributes serve two purposes; they may be used as Matching Key Attributes or as Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

### Note

Matching Keys are typically used in an SQL 'where' clause. Return Keys are typically used in an SQL 'select' clause to convey the Attribute values.

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5.

### BB.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Implant Template Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of Implant Template or Implant Assembly Template composite SOP Instances. The information is organized into an Information Model. The Information Models for the different SOP Classes specified in this Annex are defined in Section BB.6.

### BB.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of an Implant Template or Implant Assembly Template Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Implant Template and Implant Assembly Template Query/Retrieve Service Classes are implemented using the DIMSE-C C-FIND, C-MOVE and C-GET services as defined in PS3.7.

An SCP of this SOP Class shall support Level-2 conformance as defined in Section B.4.1.

The semantics of the C-FIND service are the same as those defined in the Service Definition of the Basic Worklist Management Service Class.

The semantics of the C-MOVE service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

The semantics of the C-GET service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

## BB.2 Implant Template Information Models Definitions

The Implant Template, Implant Assembly Template, and Implant Template Group Information Models are identified by the SOP Class negotiated at Association establishment time. Each SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

The Implant Template, Implant Assembly Template, and Implant Template Group Information Models are defined in Section BB.6, with the Entity-Relationship Model Definition and Key Attributes Definition analogous to those defined in the Worklist Information Model Definition of the Basic Worklist Management Service.

## BB.3 Implant Template Information Models

The Implant Template Information Models are based upon a one level entity:

- Implant Template object instance.

The Implant Template object instance contains Attributes associated with the Implant Template object IE of the Composite IODs as defined in PS3.3.

The Implant Assembly Template Information Model is based upon a one level entity:

- Implant Assembly Template object instance.

The Implant Assembly Template object instance contains Attributes associated with the Implant Assembly Template object IE of the Composite IODs as defined in PS3.3.

The Implant Assembly Group Information Model is based upon a one level entity:

- Implant Template Group object instance.

The Implant Template Group object instance contains Attributes associated with the Implant Template Group object IE of the Composite IODs as defined in PS3.3.

## BB.4 DIMSE-C Service Groups

### BB.4.1 C-FIND Operation

See the C-FIND Operation definition for the Basic Worklist Management Service Class (K.4.1), and substitute "Implant Template" for "Worklist". The "Worklist" Search Method shall be used.

The SOP Class UID identifies the Implant Template or Implant Assembly Template, respectively Information Model against which the C-FIND is to be performed. The Key Attributes and values allowable for the query are defined in the SOP Class definitions for the Implant Template and Implant Assembly Template Information Model.

#### BB.4.1.1 Service Class User Behavior

When receiving several Implant Template Instances with the same Implant Part Number, the receiving application shall use Effective DateTime (0068,6226) to determine the appropriate Instance.

#### BB.4.1.2 Service Class Provider Behavior

An SCP of this SOP Class shall support Level-2 conformance as defined in Section B.4.1.

### BB.4.2 C-MOVE Operation

See the C-MOVE Operation definition for the Query/Retrieve Service Class (C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Implant Template and Implant Assembly Template Query/Retrieve Service Classes.

Query/Retrieve Level (0008,0052) is not relevant to the Implant Template and Implant Assembly Template Query/Retrieve Service Classes, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

### BB.4.3 C-GET Operation

See the C-GET Operation definition for the Query/Retrieve Service Class (C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Implant Template and Implant Assembly Template Query/Retrieve Service Classes.

### Note

More than one entity may be retrieved, using List of UID matching.

## BB.5 Association Negotiation

See the Association Negotiation definition for the Basic Worklist Management Service Class (K.5).

## BB.6 SOP Class Definitions

### BB.6.1 Implant Template Information Model

#### BB.6.1.1 E/R Models

The Implant Template Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Implant Template Instance.

Figure BB.6-1. Implant Template Information Model E/R Diagram

The Implant Assembly Template Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Implant Assembly Template Instance.

Figure BB.6-2. Implant Assembly Template Information Model E/R Diagram

The Implant Template Group Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Implant Template Group Instance.

Figure BB.6-3. Implant Template Group Information Model E/R Diagram

#### BB.6.1.2 Implant Template Attributes

##### BB.6.1.2.1 Generic Implant Template Attributes

Table BB.6-1 defines the Attributes of the Generic Implant Template Information Model:

Table BB.6-1. Attributes for the Implant Template Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Implant Template
Manufacturer | (0008,0070) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Implant Name | (0022,1095) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Implant Size | (0068,6210) | R | 2 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Implant Part Number | (0022,1097) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Replaced Implant Template Sequence | (0068,6222) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Derivation Implant Template Sequence | (0068,6224) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Effective DateTime | (0068,6226) | R | 1 | Shall be retrieved with Single Value or Range Matching.
Original Implant Template Sequence | (0068,6225) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Implant Target Anatomy Sequence | (0068,6230) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Anatomic Region Sequence | (0008,2218) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Code Meaning | (0008,0104) | - | 1 |
Implant Regulatory Disapproval Code Sequence | (0068,62A0) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Material Code Sequence | (0068,63A0) | R | 1 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Coating Materials Code Sequence | (0068,63A4) | R | 1 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |

##### BB.6.1.2.2 Implant Assembly Template Attributes

Table BB.6-2 defines the Attributes of the Implant Assembly Template Information Model:

Table BB.6-2. Attributes for the Implant Assembly Template Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Implant Assembly Template
Implant Assembly Template Name |  | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Manufacturer | (0008,0070) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Procedure Type Code Sequence | (0076,0020) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Replaced Implant Assembly Template Sequence | (0076,0008) | R | 1 | Shall be retrieved with Sequence or Universal Matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Original Implant Assembly Template Sequence | (0076,000C) | R | 1 | Shall be retrieved with Sequence or Universal Matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Derivation Implant Assembly Template Sequence | (0076,000E) | R | 1 | Shall be retrieved with Sequence or Universal Matching.
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Surgical Technique | (0076,0030) | R | 2 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.

##### BB.6.1.2.3 Implant Template Group Attributes

Table BB.6-3 defines the Attributes of the Implant Template Group Information Model:

Table BB.6-3. Attributes for the Implant Template Group Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Implant Template Group
Implant Template Group Name | (0078,0000) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Implant Template Group Description | (0078,0010) | - | 2 |
Implant Template Group Issuer | (0078,0020) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Effective DateTime | (0068,6226) | R | 1 | Shall be retrieved with Single Value or Range Matching.
Replaced Implant Template Group Sequence | (0078,0026) | R | 2 | Shall be retrieved with Sequence or Universal Matching
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.

#### BB.6.1.3 Conformance Requirements

An implementation may conform to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCU, SCP, any combination of two of these, or all three. The Conformance Statement shall be in the format defined in PS3.2.

##### BB.6.1.3.1 SCU Conformance

###### BB.6.1.3.1.1 C-FIND SCU Conformance

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes shall support queries against the appropriate Information Model using the C-FIND SCU Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.2 and Section BB.4.1).

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCU shall state in its Conformance Statement whether it requests Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

###### BB.6.1.3.1.2 C-MOVE SCU Conformance

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCU shall support transfers against the appropriate Information Model, using the C-MOVE SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.2.1 and Section BB.4.2).

###### BB.6.1.3.1.3 C-GET SCU Conformance

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCU shall support transfers against the appropriate Information Model, using the C-GET SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.2).

##### BB.6.1.3.2 SCP Conformance

###### BB.6.1.3.2.1 C-FIND SCP Conformance

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCP shall support queries against the appropriate Template Information Model, using the C-FIND SCP Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.3).

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCP shall state in its Conformance Statement whether it supports Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

###### BB.6.1.3.2.2 C-MOVE SCP Conformance

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCP shall support transfers against the appropriate Information Model, using the C-MOVE SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.3.1).

An implementation that conforms to one of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Classes as an SCP, which generates transfers using the C-MOVE operation, shall state in its Conformance Statement appropriate Storage Service Class, under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### BB.6.1.3.2.3 C-GET SCP Conformance

An implementation that conforms to one of the SOP Classes of the Implant Template, Implant Assembly Template, or Implant Template Group Information Model SOP Class Group as an SCP shall support retrievals against the Query/Retrieve Information Model described in Section C.6.1.1 using the C-GET SCP Behavior described in Section C.4.3.3.

#### BB.6.1.4 SOP Classes

The SOP Classes of the Implant Template Information Models in the Implant Template Query/Retrieve Service Class identify the Implant Template Information Models, and the DIMSE-C operations supported. The SOP Classes of the Implant Assembly Template Information Models in the Implant Assembly Template Query/Retrieve Service Class identify the Implant Assembly Template Information Models, and the DIMSE-C operations supported. The SOP Classes of the Implant Template Group Information Models in the Implant Template Group Query/Retrieve Service Class identify the Implant Template Group Information Models, and the DIMSE-C operations supported. The following Standard SOP Classes are identified:

Table BB.6.1.4-1. Implant Template SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Generic Implant Template Information Model - FIND | 1.2.840.10008.5.1.4.43.2
Generic Implant Template Information Model - MOVE | 1.2.840.10008.5.1.4.43.3
Generic Implant Template Information Model - GET | 1.2.840.10008.5.1.4.43.4
Implant Assembly Template Information Model - FIND | 1.2.840.10008.5.1.4.44.2
Implant Assembly Template Information Model - MOVE | 1.2.840.10008.5.1.4.44.3
Implant Assembly Template Information Model - GET | 1.2.840.10008.5.1.4.44.4
Implant Template Group Information Model - FIND | 1.2.840.10008.5.1.4.45.2
Implant Template Group Information Model - MOVE | 1.2.840.10008.5.1.4.45.3
Implant Template Group Information Model - GET | 1.2.840.10008.5.1.4.45.4

# CC Unified Procedure Step Service and SOP Classes (Normative)

## CC.1 Overview

This Annex defines the Service and SOP Classes associated with a Unified Worklist and Procedure Step.

The Unified Procedure Step Service Class provides for management of simple worklists, including creating new worklist items, querying the worklist, and communicating progress and results.

A worklist is a list of Unified Procedure Step (UPS) instances. Each UPS instance unifies the worklist details for a single requested procedure step together with the result details of the corresponding performed procedure step. There is a one to one relationship between the procedure step request and the procedure step performed.

Unified Procedure Step instances may be used to represent a variety of scheduled tasks such as: Image Processing, Quality Control, Computer Aided Detection, Interpretation, Transcription, Report Verification, or Printing.

The UPS instance can contain details of the requested task such as when it is scheduled to be performed or Workitem Codes describing the requested actions. The UPS may also contain details of the input information the performer needs to do the task and the output the performer produced, such as: Current Images, Prior Images, Reports, Films, Presentation States, or Audio recordings.

The Unified Worklist and Procedure Step Service Class includes four SOP Classes associated with UPS instances. The SOP Class UID for any UPS Instance always specifies the UPS Push SOP Class. The separate SOP Classes facilitate better negotiation and logical implementation groups of functionality.

The UPS Push SOP Class allows an SCU to instruct the SCP to create a new UPS instance, effectively letting a system push a new work item onto the SCP's worklist. It is important to note that the SCP could be a Worklist Manager that maintains the worklist for other systems that will perform the work, or the SCP could be a performing system itself that manages an internal worklist.

The UPS Pull SOP Class allows an SCU to query a Worklist Manager (the SCP) for matching UPS instances, and instruct the SCP to update the status and contents of selected items (UPS instances). The SCU effectively pulls work instructions from the worklist. As work progresses, the SCU records details of the activities performed and the results created in the UPS instance.

The UPS Watch SOP Class allows an SCU to subscribe for status update events and retrieve the details of work items (UPS instances) managed by the SCP.

The UPS Event SOP Class allows an SCP to provide the actual status update events for work items it manages to relevant (i.e., subscribed) SCUs.

Each of these services has an equivalent HTTP operation defined by the UPS-RS Worklist Service (see Section 6.9 “UPS-RS Worklist Service” in PS3.18 ).

While a Unified Worklist and Procedure Step Service Class SCP is not required to support UPS-RS, an SCP may choose to support one or more of the UPS-RS services as an Origin-Server. In this scenario, an SCP/Origin Server shall follow the same internal behavior for all Workitems irrespective of whether they originated with a DIMSE request or an HTTP request. A DIMSE request and its equivalent HTTP request with the same parameters shall yield the same response.

For example:

- A Workitem instance created via DIMSE N-CREATE can be retrieved via HTTP requests and vice-versa

- A Workitem instance created via DIMSE N-CREATE can be updated, have its state changed or be canceled via HTTP requests and vice-versa

- A C-FIND request and an HTTP SearchForUPS request with the same parameters shall return the same set of results

- An N-EVERT-REPORT SCU that also supports HTTP subscriptions will record whether a given subscriber uses DIMSE or WebSockets and send the appropriate form of notification to that subscriber

- A change made to a Workitem instance will result in the same event notifications regardless of whether the change was requested via DIMSE or HTTP

- A Global Subscription request or a Filtered Global Subscription request will subscribe an SCU (or User-Agent) to instances created both via DIMSE and via HTTP requests

- A DIMSE event subscriber will receive notifications for relevant changes made via HTTP requests

- An HTTP event subscriber will receive notifications for relevant changes made via DIMSE requests

The mapping between UPS DIMSE operations and UPS-RS services is defined in Section 6.9 “UPS-RS Worklist Service” in PS3.18 .

### CC.1.1 Unified Procedure Step States

Figure CC.1.1-1, Table CC.1.1-1 and Table CC.1.1-2 specify how changes in the state of a Unified Procedure Step shall be managed.

Figure CC.1.1-1. Unified Procedure Step State Diagram

The following interactions represent an example sequence of events and state transitions. Observe that the DIMSE Services described here operate on the same IOD. The multiple UPS SOP Classes thus act in a coordinated manner as specified in this Annex.

To create a UPS, an SCU uses an N-CREATE to push a UPS onto the SCP's worklist. The SCP responds to such requests by creating a Unified Procedure Step (UPS) with an initial state of SCHEDULED.

### Note

All UPS Instances are instances of the UPS Push SOP Class, although the other three SOP Classes (UPS Pull, UPS Watch and UPS Event) may also operate on the Instance.

To subscribe to receive N-EVENT-REPORTs for a UPS, or to unsubscribe to stop receiving N-EVENT-REPORTS, an SCU uses an N-ACTION request. The SCU may be the system that created the UPS as a Push SCU, or may be some other system with a reason to track the progress and results of a scheduled step.

To inform interested systems of the state of a UPS or the SCP itself, an SCP issues N-EVENT-REPORTs to SCUs that have subscribed.

To find a UPS of interest, an SCU uses a C-FIND to query the SCP for relevant UPS instances.

To "claim" and start work on a UPS, an SCU (which will be referred to here as the "Performing SCU") uses an N-ACTION Change State request to set the UPS state to IN PROGRESS and provide a transaction UID (which will be referred to here as the Locking UID). For a SCHEDULED UPS, the SCP responds by changing the UPS state to IN PROGRESS and recording the transaction UID for future use. For a UPS with other status, the SCP rejects the request.

The SCP does not permit the status of a SCHEDULED UPS to be set to COMPLETED or CANCELED without first being set to IN PROGRESS.

To modify details of the performed procedure, the Performing SCU uses an N-SET request to the SCP (providing the Locking UID for the UPS). N-SET requests on an IN PROGRESS UPS where the Locking UID in the N-SET data set does not match the Locking UID in the UPS are rejected by the SCP.

To modify the status of the procedure step, the Performing SCU uses an N-ACTION Change State request to the SCP (providing the Locking UID for the UPS). N-ACTION Change State requests where the Locking UID in the N-ACTION data set does not match the Locking UID in the UPS are rejected by the SCP.

The Locking UID effectively limits control of the state of an IN PROGRESS UPS to only the SCP and the Performing SCU. The SCP does not check whether IP addresses, AE-Titles, or parameters other than the Locking UID match to determine if the SCU has permission.

When the Performing SCU completes work on the UPS, it N-SETs any values necessary to meet the Final State requirements in Table CC.2.5-3, then uses an N-ACTION request (providing the Locking UID for the UPS during both steps) for the SCP to change the UPS state to COMPLETED.

When the Performing SCU abandons work on an incomplete UPS, it N-SETs any values necessary to meet the Final State requirements in Table CC.2.5-3, then uses an N-ACTION request (providing the Locking UID for the UPS) for the SCP to change the UPS state to CANCELED.

To request cancellation of a UPS, non-performing SCUs use an N-ACTION Request Cancel (see Section GGG.2.4 “Third Party Cancel” in PS3.17 and Section GGG.2.5 “Radiation Therapy Dose Calculation Push Workflow” in PS3.17 for example cases).

- If the UPS is still in the SCHEDULED state, the SCP first changes the UPS state to IN PROGRESS, and then to CANCELED, issuing the appropriate N-EVENT-REPORTS.

- If the UPS is already IN PROGRESS and the SCP is itself performing the UPS, it may, at its own discretion, choose to cancel the UPS as described in the previous paragraph.

- If the UPS is already IN PROGRESS and the SCP is not the performer, it does not change the UPS state to CANCELED, but rather responds by issuing an N-EVENT-REPORT of the cancellation request to all subscribed SCUs. If the Performing SCU is listening to N-EVENT-REPORTs it may, at its own discretion, choose to cancel the UPS as described above.

Table CC.1.1-1 describes the valid UPS states

Table CC.1.1-1. Unified Procedure Step (UPS) States

State | Description
--- | ---
SCHEDULED | The UPS is scheduled to be performed.
IN PROGRESS | The UPS has been claimed and a Locking UID has been set. Performance of the UPS has likely started.
CANCELED | The UPS has been permanently stopped before or during performance of the step. This may be due to voluntary or involuntary action by a human or machine. Any further UPS-driven work required to complete the scheduled task must be performed by scheduling another (different) UPS.
COMPLETED | The UPS has been completed.

COMPLETED and CANCELED are "Final States" that involve specific requirements on the UPS as described in Section CC.2.5.1.1.

Table CC.1.1-2 describes the valid state transitions (a row in the table defines what should happen in response to a certain event for each initial state). Details on how the Operations listed in the table should be carried out are described in section Section CC.2.

Table CC.1.1-2. Unified Procedure Step State Transition Table

| States
--- | ---
Events | null | SCHEDULED | IN PROGRESS | COMPLETED | CANCELED
N-CREATE received for this SOP Instance UID | Create SOP Instance with empty transaction UID, Change State to SCHEDULED | error 0111 | error 0111 | error 0111 | error 0111
N-ACTION to Change State to IN PROGRESS with correct transaction UID | error C307 | Report state change, Record transaction UID, Change State to IN PROGRESS | error C302 | error C300 | error C300
N-ACTION to Change State to IN PROGRESS without correct transaction UID | error C307 | error C301 | error C301 | error C301 | error C301
N-ACTION to Change State to SCHEDULED | error C307 | error C303 | error C303 | error C303 | error C303
N-ACTION to Change State to COMPLETED, with correct transaction UID | error C307 | error C310 | If Final State Requirements met, (Report state change, Change State to COMPLETED); Else C304 | warning B306 | error C300
N-ACTION to Change State to COMPLETED, without correct transaction UID | error C307 | error C301 | error C301 | error C301 | error C301
N-ACTION to Request Cancel | error C307 | Report state change to IN-PROGRESS, Report state change to CANCELED, Change State to CANCELED | Report that an Application Entity requested a cancel. | error C311 | warning B304
N-ACTION to Change State to CANCELED, with correct transaction UID | error C307 | error C310 | If Final State Requirements met, (Report state change, Change State to CANCELED); Else C304. | error C300 | warning B304
N-ACTION to Change State to CANCELED, without correct transaction UID | error C307 | error C301 | error C301 | error C301 | error C301

## CC.2 DIMSE Service Groups

The DIMSE Services shown in Table CC.2-1, Table CC.2-2, Table CC.2-3 and Table CC.2-4 are applicable to the Unified Procedure Step (UPS) IOD under the UPS Push, UPS Pull, UPS Watch and UPS Event SOP Classes respectively.

Table CC.2-1. DIMSE Service Group - UPS Push

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-ACTION - Request UPS Cancel | U/M
N-GET | U/M

Table CC.2-2. DIMSE Service Group - UPS Pull

DIMSE Service Element | Usage SCU/SCP
--- | ---
C-FIND | M/M
N-GET | M/M
N-SET | M/M
N-ACTION - Change UPS State | M/M

Table CC.2-3. DIMSE Service Group - UPS Watch

DIMSE Service Element | SCU/SCP
--- | ---
N-ACTION - Un/Subscribe | M/M
N-GET | M/M
C-FIND | U/M
N-ACTION - Request UPS Cancel | U/M

Table CC.2-4. DIMSE Service Group - UPS Event

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-EVENT-REPORT | M/M

### CC.2.1 Change UPS State (N-ACTION)

This operation allows an SCU to ask the SCP to change the state of a Unified Procedure Step (UPS) instance. This operation shall be invoked by the SCU through the DIMSE N-ACTION Service.

#### CC.2.1.1 Action Information

DICOM AEs that claim conformance to the UPS Pull SOP Class as an SCU and/or an SCP shall support the Action Types and Action Information as specified in Table CC.2.1-1.

Table CC.2.1-1. Change UPS State - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Change UPS State | 1 | Procedure Step State | (0074,1000) | 1/1
Transaction UID | (0008,1195) | 1/1

#### CC.2.1.2 Service Class User Behavior

An SCU uses N-ACTION to ask the SCP to change the state of a UPS Instance as shown in Figure CC.1.1-1. Since all UPSs are created as instances of the UPS Push SOP Class, the Requested SOP Class UID (0000,0003) in the N-ACTION request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details.

To take control of a SCHEDULED UPS, an SCU shall generate a Transaction UID and submit a state change to IN PROGRESS including the Transaction UID in the submission. The SCU shall record and use the Transaction UID in future N-ACTION and N-SET requests for that UPS instance.

### Note

1. The performing SCU may wish to record the Transaction UID in non-volatile storage. This would allow the SCU to retain control over the UPS after recovering from a crash.

2. If two SCUs try to take control of a UPS, the second SCU will get an error since the first SCU established the correct Transaction UID, so the Transaction UID provided by the second SCU is incorrect.

Upon completion of an IN PROGRESS UPS it controls, an SCU shall submit a state change to COMPLETED and include the Transaction UID for the UPS instance.

To cancel an IN PROGRESS UPS for which it has the Transaction UID, an SCU shall submit a state change to CANCELED and include the Transaction UID for the UPS instance.

### Note

1. Prior to submitting the state change to CANCELED, the performing SCU can N-SET the values of Reason For Cancellation, Procedure Step Discontinuation Reason Code Sequence, Contact Display Name or Contact URI to provide information to observing SCUs about the context of the cancellation.

2. To request cancellation of an IN PROGRESS UPS for which it does not have the Transaction UID, an SCU uses the Request UPS Cancel action as described in Section CC.2.2, rather than a Change UPS State action.

Prior to submitting a state change to COMPLETED or CANCELED for a UPS instance it controls, the SCU shall perform any N-SETs necessary for the UPS to meet Final State requirements as described in section Section CC.2.5.1.1.

At any time after receipt of the N-ACTION-Response, the SCU may release the association on which it sent the N-ACTION-Request.

#### CC.2.1.3 Service Class Provider Behavior

The SCP shall perform the submitted state change for the identified UPS instance by setting the Procedure Step State (0074,1000) to the requested value, or shall report the appropriate failure response code.

Upon successfully changing the state of a UPS instance to IN PROGRESS, the SCP shall record the Transaction UID provided by the SCU in the Transaction UID (0008,1195) of the UPS instance.

Upon completion of the N-ACTION request, the SCP shall return, via the N-ACTION response primitive, the N-ACTION Status Code applicable to the associated request as shown in Table CC.2.1-2.

The SCP shall only perform legal state changes as described in Table CC.1.1-2.

The SCP shall refuse requests to change the state of an IN PROGRESS UPS unless the Transaction UID of the UPS instance is provided in the request.

The SCP shall refuse requests to change the state of an IN PROGRESS UPS to COMPLETED or CANCELED if the Final State requirements described in Table CC.2.5-3 have not been met.

After the state of the UPS instance has been changed to COMPLETED or CANCELED, the SCP shall not delete the instance until all deletion locks have been removed.

### Note

See Section CC.2.3.2 for a description of how SCUs place and remove deletion locks and see Section GGG.1 “Introduction” in PS3.17 Reliable Watchers and Deletion Locks for further discussion.

The SCP may also modify the Procedure Step State (0074,1000) of a UPS instance independently of an N-ACTION request, e.g., if the SCP is performing the procedure step itself, or if it has been determined that the performing SCU has been disabled.

### Note

If the SCP is not performing the procedure step, this should be done with caution.

Upon successfully changing the state of a UPS instance, the SCP shall carry out the appropriate N-EVENT-REPORT behavior as described in Section CC.2.4.3 if it supports the UPS Event SOP Class as an SCP.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. Further requiring or documenting authentication and/or authorization features from the SCU or SCP is beyond the scope of this SOP Class.

#### CC.2.1.4 Status Codes

Table CC.2.1-2 defines the status code values that might be returned in a N-ACTION response. General status code values and fields related to status code values are defined for N-ACTION DIMSE Service in PS3.7 .

Table CC.2.1-2. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | The requested state change was performed | 0000
Warning | The UPS is already in the requested state of CANCELED | B304
The UPS is already in the requested state of COMPLETED | B306
Failure | Failed: The UPS may no longer be updated | C300
Failed: The correct Transaction UID was not provided | C301
Failed: The UPS is already IN PROGRESS | C302
Failed: The UPS may only become SCHEDULED via N-CREATE, not N-SET or N-ACTION | C303
Failed: The UPS has not met final state requirements for the requested state change | C304
Specified SOP Instance UID does not exist or is not a UPS Instance managed by this SCP | C307
Failed: The UPS is not yet in the "IN PROGRESS" state | C310

### CC.2.2 Request UPS Cancel (N-ACTION)

This operation allows an SCU that does not control a given Unified Procedure Step (UPS) instance to request to the SCP that the instance be canceled. This operation shall be invoked by the SCU through the DIMSE N-ACTION Service.

#### CC.2.2.1 Action Information

DICOM AEs that claim conformance to the UPS Push SOP Class as an SCU or an SCP shall support the Action Types and Action Information as specified in Table CC.2.2-1. DICOM AEs that claim conformance to the UPS Watch SOP Class as an SCP or claim conformance to the UPS Watch SOP Class as an SCU and choose to implement Request UPS Cancel shall support the Action Types and Action Information as specified in Table CC.2.2-1.

Table CC.2.2-1. Request UPS Cancel - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Request UPS Cancel | 2 | Reason For Cancellation | (0074,1238) | 3/1
Procedure Step Discontinuation Reason Code Sequence | (0074,100e) | 3/1
>Code Value | (0008,0100) | 1/1
>Coding Scheme Designator | (0008,0102) | 1/1
>Coding Scheme Version | (0008,0103) | 1C/1C Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously
>Code Meaning | (0008,0104) | 1/1
Contact URI | (0074,100a) | 3/1
Contact Display Name | (0074,100c) | 3/1

#### CC.2.2.2 Service Class User Behavior

An SCU uses N-ACTION to request to the SCP that the state of a UPS Instance be changed to CANCELED as shown in Figure CC.1.1-1. Since all UPSs are created as instances of the UPS Push SOP Class, the Requested SOP Class UID (0000,0003) in the N-ACTION request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details.

The SCU may include a Reason For Cancellation and/or a proposed Procedure Step Discontinuation Reason Code Sequence.

The SCU may also provide a Contact Display Name and/or a Contact URI for the person with whom the cancel request may be discussed.

### Note

An N-ACTION Status Code indicating success means that the Request was accepted, not that the UPS has been canceled. The system performing the UPS is not obliged to honor the request to cancel and in some scenarios, may not even receive notification of the request. See Section CC.2.4.

At any time after receipt of the N-ACTION-Response, the SCU may release the association on which it sent the N-ACTION-Request.

To cancel an IN PROGRESS UPS that the SCU is itself performing, the SCU shall instead use the Change UPS State action as described in Section CC.2.1.

#### CC.2.2.3 Service Class Provider Behavior

The SCP shall send appropriate "UPS Cancel Requested" N-EVENT-REPORT messages, as described in Section CC.2.4.3 or shall report the appropriate failure response code.

### Note

If provided, the Reason For Cancellation, a proposed Procedure Step Discontinuation Reason Code Sequence, a Contact Display Name and a Contact URI of someone responsible for the Cancel request might be useful in deciding to cancel the UPS or might be displayed to an operator so they can make contact for the purpose of clarifying or confirming the Cancel request. If the SCP is the performer and chooses to actually Cancel the UPS, it may at its own discretion set the Procedure Step Discontinuation Reason Code Sequence in the UPS instance based on the corresponding values provided.

If the Procedure Step State (0074,1000) of the UPS instance is still SCHEDULED, the SCP shall change the Procedure Step State, as described in Section CC.2.1.3, first to IN PROGRESS and then to CANCELED, ensuring that the Final State requirements, described in section Section CC.2.5.1.1, are met.

If the Procedure Step State (0074,1000) of the UPS instance is IN PROGRESS, and the SCP is itself the performer of the UPS, the SCP may, at its own discretion, choose to cancel the UPS as described in Section CC.2.1.3.

If the SCP is the performer of the UPS and chooses not to cancel, or if there is no possibility that the performing SCU will be informed of the cancel request (e.g., the subscription list for the UPS is empty, or the SCP has determined that the performing SCU has been disabled), the SCP may return a failure.

Upon completion of the N-ACTION request, the SCP shall return, via the N-ACTION response primitive, the N-ACTION Status Code applicable to the associated request as shown in Table CC.2.2-2.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. Further requiring or documenting authentication and/or authorization features from the SCU or SCP is beyond the scope of this SOP Class.

#### CC.2.2.4 Status Codes

Table CC.2.2-2 defines the status code values that might be returned in a N-ACTION response. General status code values and fields related to status code values are defined for N-ACTION DIMSE Service in PS3.7.

Table CC.2.2-2. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | The cancel request is acknowledged | 0000
Warning | The UPS is already in the requested state of CANCELED | B304
Failure | Failed: The UPS is already COMPLETED | C311
Failed: Performer chooses not to cancel | C313
Specified SOP Instance UID does not exist or is not a UPS Instance managed by this SCP | C307
Failed: The performer cannot be contacted | C312

### CC.2.3 Subscribe/Unsubscribe to Receive UPS Event Reports (N-ACTION)

This operation allows an SCU to subscribe with an SCP in order to receive N-EVENT-REPORTS of subsequent changes to the state of a UPS instance, or to unsubscribe in order to no longer receive such N-EVENT-REPORTs. This operation shall be invoked by the SCU through the DIMSE N-ACTION Service.

#### CC.2.3.1 Action Information

DICOM AEs that claim conformance to the UPS Watch SOP Class as an SCU and/or an SCP shall support the Action Types and Action Information as specified in Table CC.2.3-1.

Table CC.2.3-1. Subscribe/Unsubscribe to Receive UPS Event Reports - Action Information

Action Type Name | Action Type ID | Attribute Name | Tag | Requirement Type SCU/SCP
--- | --- | --- | --- | ---
Subscribe to Receive UPS Event Reports | 3 | Receiving AE | (0074,1234) | 1/1
Deletion Lock | (0074,1230) | 1/1
Match Keys (see Section CC.2.3.1) | 1/1
Unsubscribe from Receiving UPS Event Reports | 4 | Receiving AE | (0074,1234) | 1/1
Suspend Global Subscription | 5 | Receiving AE | (0074,1234) | 1/1

Each AE may be in one of three UPS Subscription States for each existing UPS Instance: Not Subscribed, Subscribed with Deletion Lock, or Subscribed w/o Deletion Lock. The UPS Subscription State determines whether N-EVENT-REPORTs relating to a UPS Instance will be sent to the AE.

Each AE may also be in one of three Global Subscription States for a given SCP: No Global Subscription, Globally Subscribed with Deletion Lock, Globally Subscribed w/o Deletion Lock. The Global Subscription State mainly determines the initial UPS Subscription State for an AE and new UPS Instances created by the SCP. Changes to the Global Subscription State can also change the UPS Subscription State for existing UPS Instances as described in Table CC.2.3-2.

The three Subscription actions in Table CC.2.3-1 are used to manage the UPS Subscription State and Global Subscription State of an AE.

Table CC.2.3-2 describes the UPS Subscription State transitions of an AE for a given UPS Instance. Each row in the table defines what should happen in response to a Subscription Action, or a UPS creation event, given the initial state. The table also shows when an initial event message should be sent to the AE describing the "Current UPS State".

### Note

In general, instance specific instructions take precedence over global instructions. The exception is the Unsubscribe Globally instruction, which removes all subscriptions, global and specific. To simply stop globally subscribing to new instances without removing specific subscriptions, use the Suspend Global Subscription message.

Most actions affect only the UPS Subscription State of a single UPS Instance. However, Global actions potentially affect all existing UPS Instances managed by the SCP and this is indicated in the following table by "All". For example, in the "AE Subscribes Globally with Lock" row, the content of the "Not Subscribed" cell means that in addition to setting the Global Subscription State for the AE to "Global Subscription with Lock", all existing UPS Instances whose UPS Subscription State for the Receiving AE is "Not Subscribed" will each have their UPS Subscription State changed to "Subscribed with Lock" and an event will be sent to the Receiving AE for each Instance.

Table CC.2.3-2. UPS Subscription State Transition Table

| States (for a specific UPS and AE)
--- | ---
Events | null | Not Subscribed | Subscribed with Lock | Subscribed w/o Lock
A UPS is Created when the AE Global Subscription State is "No Global Subscription" | Go to Not Subscribed | N/A | N/A | N/A
A UPS is Created when the AE Global Subscription State is "Global Subscription with Lock" | Go to Subscribed with Lock; Send initial event | N/A | N/A | N/A
A UPS is Created when the AE Global Subscription State is "Global Subscription w/o Lock" | Go to Subscribed w/o Lock; Send initial event | N/A | N/A | N/A
AE Subscribes Globally with Lock | N/A | AE Global State is now "Global Sub. with Lock"; All Go to Subscribed with Lock; All Send initial event | AE Global State is now "Global Sub. with Lock"; No UPS state change; | AE Global State is now "Global Sub. with Lock"; No UPS state change;
AE Subscribes Globally w/o Lock | N/A | AE Global State is now "Global Sub. w/o Lock"; All Go to Subscribed w/o Lock; | AE Global State is now "Global Sub. w/o Lock"; No UPS state change; | AE Global State is now "Global Sub. w/o Lock"; No UPS state change;
AE Subscribes to Specific UPS with Lock | N/A | Go to Subscribed with Lock; Send initial event | No UPS state change; Send initial event | Go to Subscribed with Lock; Send initial event
AE Subscribes to Specific UPS without Lock | N/A | Go to Subscribed w/o Lock; Send initial event | Go to Subscribed w/o Lock; Send initial event | No UPS state change; Send initial event
AE Unsubscribes from Specific UPS | N/A | No UPS state change | Go to Not Subscribed | Go to Not Subscribed
AE Unsubscribes Globally | N/A | AE Global State is now "No Global Subscription"; No UPS state change; | AE Global State is now "No Global Subscription"; All Go to Not Subscribed; | AE Global State is now "No Global Subscription"; All Go to Not Subscribed;
AE Suspends Global Subscription | N/A | AE Global State is now "No Global Subscription"; No UPS state change; | AE Global State is now "No Global Subscription"; No UPS state change; | AE Global State is now "No Global Subscription"; No UPS state change;

See Section GGG.1 “Introduction” in PS3.17 Reliable Watchers and Deletion Locks for further discussion of deletion locks.

#### CC.2.3.2 Service Class User Behavior

The SCU subscribing to track the progress and results of the scheduled procedure step may be the system that created the UPS as an SCU of the UPS Push SOP Class, or it may be some other interested observer.

An SCU shall use the N-ACTION primitive to request the SCP to subscribe an AE (usually the requesting SCU) to receive event reports relating to UPS instances managed by the SCP. Since all UPSs are created as instances of the UPS Push SOP Class, the Requested SOP Class UID (0000,0003) in the N-ACTION request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details.

An SCU shall also use the N-ACTION primitive to request the SCP to unsubscribe an AE to stop receiving event reports relating to UPS instances managed by the SCP. Action Information is specified in Table CC.2.3-1. The SCU shall always provide the AE-TITLE that is to receive (or stop receiving) the N-EVENT-REPORTs.

To subscribe for events relating to a single specific UPS instance managed by the SCP, the SCU shall use Action Type ID 3 (Subscribe to Receive UPS Event Reports) and provide the SOP Instance UID of the specific UPS instance in the N-ACTION primitive request. The SCU shall indicate a need for the UPS instance to persist after its state has changed to COMPLETED or CANCELED by setting the value of the Deletion Lock to TRUE. Otherwise the SCU shall set the value of the Deletion Lock to FALSE.

To unsubscribe for events relating to a single specific UPS instance managed by the SCP, the SCU shall use Action Type ID 4 (Unsubscribe from Receiving UPS Event Reports) and provide the SOP Instance UID of the specific UPS instance in the N-ACTION primitive request.

To subscribe for events relating to all current and subsequently created UPS instances managed by the SCP, the SCU shall use Action Type ID 3 (Subscribe to Receive UPS Event Reports) and provide the well-known UID 1.2.840.10008.5.1.4.34.5 in the N-ACTION primitive request. The SCU shall indicate a need for UPS instances to persist after their states have changed to COMPLETED or CANCELED by setting the value of the Deletion Lock to TRUE. Otherwise the SCU shall set the value of the Deletion Lock to FALSE.

### Note

This "global subscription" is useful for SCUs that wish to monitor all activities without having to issue regular C-FINDs to identify new UPS instances.

To subscribe for events relating to a filtered subset of all current and subsequently created UPS instances (Filtered Global Subscription) managed by the SCP, the SCU shall use Action Type ID 3 (Subscribe to Receive UPS Event Reports) and provide both the well-known UID 1.2.840.10008.5.1.4.34.5.1 and a set of Matching Keys and values in the N-ACTION primitive request (see Section CC.2.3.3.1). The SCU shall indicate a need for UPS instances to persist after their states have changed to COMPLETED or CANCELED by setting the value of the Deletion Lock to TRUE. Otherwise the SCU shall set the value of the Deletion Lock to FALSE.

### Note

The well-known UID for a Filtered Global Subscription is distinct from the Global Subscription well-known UID.

To unsubscribe for events relating to all current UPS instances managed by the SCP and also stop being subscribed to subsequently created UPS instances, the SCU shall use Action Type ID 4 (Unsubscribe from Receiving UPS Event Reports) and provide the well-known UID 1.2.840.10008.5.1.4.34.5 in the N-ACTION primitive request.

### Note

This "global unsubscription" is useful for SCUs that wish to stop monitoring all activities and release all deletion locks (if any) placed for this subscriber.

To just stop being subscribed to subsequently created UPS instances, but still continue to receive events for currently subscribed instances managed by the SCP, the SCU shall use Action Type ID 5 (Suspend Global Subscription) and provide the well-known UID 1.2.840.10008.5.1.4.34.5 in the N-ACTION primitive request.

For each UPS instance on which the SCU has placed a deletion lock, either explicitly on the specific instance or implicitly via a global subscription with lock, the SCU shall remove the deletion lock once any needed final state information for the instance has been obtained. The deletion lock may be removed either by unsubscribing or by subscribing with the value of the Deletion Lock set to FALSE.

### Note

The SCP will retain COMPLETED or CANCELED UPS Instances until all deletion locks have been released. Failure by SCUs to release the deletion lock may cause problems for the SCP. SCUs that do not have a significant need for the final state information, or who cannot dependably remove deletion locks should not use deletion locks.

The successful N-ACTION Response Status Code indicates that the SCP has received the N-ACTION request and the Subscription State for the AE has been successfully modified.

### Note

1. When subscribing to a specific instance, the SCU can also expect to receive an initial N-EVENT-REPORT containing the current state of the UPS instance. When subscribing globally with the Deletion Lock set to TRUE, the SCU can expect to receive initial N-EVENT-REPORTs for every instance currently managed by the SCP. Initial N-EVENT-REPORTs for newly created instances, received as a result of a global subscription, will appear as transitions to the SCHEDULED state.

2. The UPS-RS User-Agent is responsible for opening the N-EVENT-REPORT communication channel (see Section 6.9.10 “OpenEventChannel” in PS3.18 ). The UPS-RS User-Agent is also responsible for re-establishing the N-EVENT-REPORT communication channel if it is disconnected. This differs from the DIMSE approach where the UPS SCP opens an Association for N-EVENT-REPORT messages as necessary.

A warning N-ACTION Response Status Code of "Deletion Lock not granted", indicates that the AE subscription requested by the SCU was successful, but the deletion lock has not been set.

A failure N-ACTION Response Status Code indicates that the subscription state change requested will not be processed and no subscription states have been changed. The action taken by the SCU upon receiving this status is beyond the scope of this Standard.

At any time after receipt of the N-ACTION-Response, the SCU may release the association on which it sent the N-ACTION-Request.

#### CC.2.3.3 Service Class Provider Behavior

Upon receipt of the N-ACTION request, the SCP shall attempt to update the Global Subscription State and/or UPS Subscription State of the specified AE with respect to the specified SOP Instance UID as described in Table CC.2.3-2 and then return, via the N-ACTION response primitive, the appropriate N-ACTION Response Status Code.

The SCP may optionally allow an Application Entity to subscribe globally to a filtered set of UPS Instances. In this case, the Application Entity will only be subscribed to existing and future UPS Instances that match the search criteria specified by the Matching Keys of the N-ACTION request (see Section CC.2.3.3.1). If the SCP does not support Filtered Global Subscription it will return a Failure response with a Code of C307 (see Table CC.2.3-3).

A success status conveys that the Global Subscription State and/or UPS Subscription State for the AE specified in Receiving AE (0074,1234) was successfully modified by the SCP. The AE-TITLE in Receiving AE (0074,1234) may be different than the AE-TITLE used by the SCU for the association negotiation. The SCP shall use the AE-TITLE specified in Receiving AE (0074,1234). This allows systems to subscribe other systems they know would be interested in events for a certain UPS.

For all UPS instances managed by the SCP, the SCP shall send N-EVENT-REPORTS (as described in Section CC.2.4.3) to AEs that have a UPS Subscription State of "Subscribed with Lock" or "Subscribed w/o Lock". If the SCP also supports the HTTP CreateSubscription service as an Origin-Server, the SCP shall also send HTTP SendEventReport messages (see Section 6.9.11 “SendEventReport” in PS3.18 ).

Upon successfully processing a subscription action, the SCP shall send initial UPS State Report N-EVENT-REPORTs, as indicated in Table CC.2.3-2, providing the current status of the UPS Instance to the Receiving AE.

The SCP may also refuse both specific and global Subscription requests by returning a failure N-ACTION Response Status Code for "Refused: Not Authorized" if the refusal depends on permissions related to the tasks or the requestor, or "Refused: SCP does not support Event Reports" if the SCP does not support sending the events. The SCP must document in its conformance statement if it might refuse Subscription requests.

The SCP may remove existing Deletion Locks by changing the UPS Subscription State for the AE from "Subscribed with Lock" to "Subscribed w/o Lock" and/or by changing the Global Subscription State for an AE from "Global Subscription with Lock" to "Global Subscription w/o Lock". This is intended to allow the SCP to deal with SCU malfunctions. The SCP must document in its conformance statement if it might remove a Deletion Lock.

The SCP may also refuse the Deletion Lock portion of a specific or global Subscription request. For example, a request to modify the UPS Subscription State for the AE to "Subscribed with Lock" would instead result in a UPS Subscription State of "Subscribed w/o Lock" and a Warning status (see Table CC.2.3-3) returned to the requesting SCU. This is intended to deal with Security and related policy restrictions. The SCP must document in its conformance statement if it might refuse a Deletion Lock.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. Further requiring or documenting authentication and/or authorization features from the SCU or SCP is beyond the scope of this SOP Class.

##### CC.2.3.3.1 Filtered Global Subscription

An SCP that supports Filtered Global Subscription shall create an instance subscription for each UPS Instance that would match a C-FIND request with the Matching Keys provided in the subscription request.

The SCP shall support the same matching logic used for C-FIND (see Section CC.2.8.3).

#### CC.2.3.4 Status Codes

Table CC.2.3-3 defines the status code values that might be returned in a N-ACTION response. General status code values and fields related to status code values are defined for N-ACTION DIMSE Service in PS3.7.

Table CC.2.3-3. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | The requested change of subscription state was performed | 0000
Warning | Deletion Lock not granted. | B301
Failure | Failed: Specified SOP Instance UID does not exist or is not a UPS Instance managed by this SCP | C307
Failed: Receiving AE-TITLE is Unknown to this SCP | C308
Failed: Specified action not appropriate for specified instance | C314
Failed: SCP does not support Event Reports | C315

### CC.2.4 Report a Change in UPS Status (N-EVENT-REPORT)

This operation allows an SCP to notify an SCU of a change in state of a UPS instance or a change in state of the SCP itself. This operation shall be invoked by the SCP through the DIMSE N-EVENT-REPORT Service.

#### CC.2.4.1 Event Report Information

DICOM AEs that claim conformance to the UPS Event SOP Class as an SCU and/or an SCP shall support the Event Type IDs and Event Report Attributes as specified in Table CC.2.4-1.

Table CC.2.4-1. Report a Change in UPS Status - Event Report Information

Event Type Name | Event Type ID | Attribute Name | Tag | Req. Type SCU/SCP
--- | --- | --- | --- | ---
UPS State Report | 1 | Procedure Step State | (0074,1000) | -/1
Input Readiness State | (0040,4041) | -/1
Reason For Cancellation | (0074,1238) | -/3
Procedure Step Discontinuation Reason Code Sequence | (0074,100e) | -/3
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/1C Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously
>Code Meaning | (0008,0104) | -/1
UPS Cancel Requested | 2 | Requesting AE | (0074,1236) | -/1
Reason For Cancellation | (0074,1238) | -/1C Required if provided in the triggering N-ACTION
Procedure Step Discontinuation Reason Code Sequence | (0074,100e) | -/1C Required if provided in the triggering N-ACTION
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/1C Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously
>Code Meaning | (0008,0104) | -/1
Contact URI | (0074,100a) | -/1C Required if provided in the triggering N-ACTION
Contact Display Name | (0074,100c) | -/1C Required if provided in the triggering N-ACTION
UPS Progress Report | 3 | Progress Information Sequence | (0074,1002) | -/1
>Procedure Step Progress | (0074,1004) | -/3
>Procedure Step Progress Description | (0074,1006) | -/3
>Procedure Step Progress Parameters Sequence | (0074,1007) | -/3
>Procedure Step Communications URI Sequence | (0074,1008) | -/3
>>Contact URI | (0074,100a) | -/1
>>Contact Display Name | (0074,100c) | -/3
SCP Status Change | 4 | SCP Status | (0074,1242) | -/1
Subscription List Status | (0074,1244) | -/1
Unified Procedure Step List Status | (0074,1246) | -/1
UPS Assigned | 5 | Scheduled Station Name Code Sequence | (0040,4025) | -/1C Required if populated in the UPS Instance
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/1C Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously
>Code Meaning | (0008,0104) | -/1
Human Performer Code Sequence | (0040,4009) | -/1C Required if populated in the UPS Instance
>Code Value | (0008,0100) | -/1
>Coding Scheme Designator | (0008,0102) | -/1
>Coding Scheme Version | (0008,0103) | -/1C Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously
>Code Meaning | (0008,0104) | -/1
Human Performer's Organization | (0040,4036) | -/1C Required if populated in the UPS Instance

### Note

The meanings of the Progress Information Attribute values in the context of a specific task are undefined, and the values may be obsolete when the UPS has moved to the COMPLETED or CANCELED state.

#### CC.2.4.2 Service Class User Behavior

The SCU shall return, via the N-EVENT-REPORT response primitive, the N-EVENT-REPORT Response Status Code applicable to the associated request. See PS3.7 for general response status codes.

The SCU shall accept all Attributes included in any notification. No requirements are placed on what the SCU will do as a result of receiving this information.

### Note

An SCU may receive N-EVENT-REPORTs with an Event Type ID of 1 (UPS State Report) either due to a state change to the UPS, or in response to initial subscription to the UPS (possibly when the UPS is initially created). See Section CC.2.3.3.

If an SCU performing a UPS receives an N-EVENT-REPORT for that instance with an Event Type ID of 2 (UPS Cancel Requested), then this SCU may, at its own discretion, choose to cancel the UPS as described in Section CC.2.1.2.

### Note

1. A UPS Cancel Requested notification includes the AE of the Requesting SCU, which could be useful to the performing SCU in deciding the significance/authority of the Cancel Request.

2. The Reason For Cancellation, a proposed Procedure Step Discontinuation Reason Code Sequence, a Contact Display Name and a Contact URI of someone responsible for the Cancel Request may also be provided in the notification. Some performing SCUs might find this information useful in deciding to cancel the UPS or might provide the information to an operator so they can make contact for the purpose of clarifying or confirming the Cancel Request. If the performing SCU chooses to Cancel the UPS, it may at its own discretion set the Procedure Step Discontinuation Reason Code Sequence in the UPS instance based on the corresponding values provided.

If an SCU receives an N-EVENT-REPORT for an instance with an Event Type ID of 5 (UPS Assigned) and the device or human specified in the notification correspond to the SCU, then the UPS has been assigned to that SCU.

An SCU that wishes to start/stop receiving N-EVENT-REPORTs about UPS instances may subscribe/unsubscribe as described in Section CC.2.3.2.

If an SCU receives an N-EVENT-REPORT with an Event Type ID of 4 (SCP Status Change), it is not required to act on that information, however the SCU may want to consider actions such as: re-subscribing if the subscription list has been Cold Started, verifying (and recreating if necessary) scheduled UPSs if the UPS list has been Cold Started, etc.

### Note

An SCU may receive SCP State Change Events from any SCP with which it is currently subscribed either globally or for any specific UPS.

#### CC.2.4.3 Service Class Provider Behavior

The SCP shall specify in the N-EVENT-REPORT Request Primitive the Event Type ID and the UID of the UPS Instance with which the event is associated. Since all UPSs are created as instances of the UPS Push SOP Class, the Affected SOP Class UID (0000,0002) in the N-EVENT-REPORT request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details. The SCP shall additionally include Attributes related to the event as defined in Table CC.2.4-1.

Each time the SCP completes a Subscribe to Receive UPS Event Reports Action (see Section CC.2.3.1) for a specific UPS instance, the SCP shall send to the Receiving AE a UPS State Report Event and provide the current value of the Procedure Step State (0074,1000) and Input Readiness State (0040,4041) Attributes for the UPS instance.

Each time the SCP completes a Subscribe to Receive UPS Event Reports Action (see Section CC.2.3.1) for the well-known UID 1.2.840.10008.5.1.4.34.5 with the value of the Deletion Lock set to TRUE (i.e., a Global Subscription with Lock), the SCP shall send to the Receiving AE a UPS State Report Event for every UPS Instance managed by the SCP and provide the current value of the Procedure Step State (0074,1000) and Input Readiness State (0040,4041) Attributes.

Each time the SCP creates a new UPS instance, the SCP shall send a UPS State Report Event, indicating a change of status to SCHEDULED and the initial value of and Input Readiness State (0040,4041), to all AEs with a Global Subscription State of "Global Subscription with Lock" or "Global Subscription w/o Lock". (see Section CC.2.3)

Each time the SCP creates a new UPS instance and either the Scheduled Station Name Code Sequence (0040,4025) or the Scheduled Human Performers Sequence (0040,4034) is populated, the SCP shall also send a UPS Assigned Event, with the current contents of the Scheduled Station Name Code Sequence (0040,4025) and the Scheduled Human Performers Sequence (0040,4034), to all AEs with a Global Subscription State of "Global Subscription with Lock" or "Global Subscription w/o Lock".

In the following text "Subscribed SCUs" means all AEs where the UPS Subscription State of the UPS Instance in question is "Subscribed with Lock" or "Subscribed w/o Lock" (see Section CC.2.3). If the SCP also supports the HTTP CreateSubscription service as an Origin-Server, "Subscribed SCUs" also includes all CreateSubscription User-Agents where the UPS Subscription State of the UPS Instance in question is "Subscribed with Lock" or "Subscribed w/o Lock" (see Section 6.9.7 “CreateSubscription” in PS3.18 ).

Each time the SCP changes the Procedure Step State (0074,1000) Attribute for a UPS instance, the SCP shall send a UPS State Report Event to subscribed SCUs.

Each time the SCP changes the Input Readiness State (0040,4041) Attribute for a UPS instance, the SCP shall send a UPS State Report Event to subscribed SCUs.

Each time the SCP receives an N-ACTION with an Action Type ID of 2 (Request UPS Cancel), the SCP shall send a UPS Cancel Requested Event to subscribed SCUs. The SCP shall include the AE Title of the triggering N-ACTION SCU in the Requesting AE Attribute. The SCP shall include the Reason For Cancellation, Contact Display Name and Contact URI Attributes if they were provided in the triggering N-ACTION.

Each time the SCP updates the Scheduled Station Name Code Sequence (0040,4025) or the Scheduled Human Performers Sequence (0040,4034) for a UPS instance, the SCP shall send a UPS Assigned Event, with the current contents of the Scheduled Station Name Code Sequence (0040,4025) and the Scheduled Human Performers Sequence (0040,4034), to subscribed SCUs.

Each time the SCP updates the Procedure Step Progress (0074,1004), the Procedure Step Progress Description (0074,1006), or the contents of the Procedure Step Communications URI Sequence (0074,1008) for a UPS instance, the SCP shall send a UPS Progress Event, with the current contents of the Progress Information Sequence (0074,1002), to subscribed SCUs.

Each time the SCP is restarted, the SCP shall send an SCP Status Change Event. The SCP, if it knows it is going down, may send an additional SCP Status Change Event before it is shut down. Since the subscription lists may be incomplete or missing in the event of a restart, the SCP shall maintain a fallback list of AEs (for example as a configuration file, or from an LDAP server). The SCP shall send the SCP Status Change Events to:

- all AEs on the fallback list and,

- all AEs with a Global Subscription State of "Global Subscription with Lock" or "Global Subscription w/o Lock" and,

- all AEs with a UPS Subscription State of "Subscribed with Lock" or "Subscribed w/o Lock" for any UPS Instance managed by the SCP

### Note

The SCP may choose to not send duplicate messages to an AE.

The value of SCP Status (0074,1242) shall be RESTARTED if the SCP is sending this message due to being restarted and GOING DOWN if the SCP will be shut down soon.

### Note

SCPs that report they are GOING DOWN might stop accepting new interactions from SCUs until after they have restarted.

When SCP Status (0074,1242) is RESTARTED, the value of Subscription List Status (0074,1244) shall be WARM START if the SCP preserved the Subscription List to the best of its knowledge, and COLD STARTED if the SCP has not preserved the Subscription List.

When SCP Status (0074,1242) is RESTARTED, the value of Unified Procedure Step List Status (0074,1246) shall be WARM START if the SCP preserved the UPS List to the best of its knowledge, and COLD START if the SCP has not preserved the UPS List.

If the SCP is unable to successfully complete an N-EVENT-REPORT to any given SCU, the SCP has no obligation to queue or retry, and it should not imply any effect on the subscription list or deletion locks.

#### CC.2.4.4 Status Codes

No Service Class specific status values are defined for the N-EVENT-REPORT Service. See PS3.7 for general response status codes.

### CC.2.5 Create a Unified Procedure Step (N-CREATE)

This operation allows an SCU to instruct an SCP to create a Unified Procedure Step. This operation shall be invoked by the SCU through the DIMSE N-CREATE Service.

#### CC.2.5.1 Unified Procedure Step Attribute Specification

An Application Entity that claims conformance to the UPS Push SOP Class as an SCU shall provide all Required Attributes as specified in Table CC.2.5-3. Additional Attributes defined by the UPS IOD may be provided as well.

An Application Entity that claims conformance to the UPS Push SOP Class as an SCP shall support all required Attributes as specified in Table CC.2.5-3. Additional Attributes defined by the UPS IOD may be supported as well.

##### CC.2.5.1.1 UPS Final State Requirements

COMPLETED and CANCELED are Final States for a UPS instance. The Attributes and values of the UPS instance must meet certain requirements before it may be placed in either of the Final States.

### Note

A UPS instance is in the SCHEDULED state when created. See Section CC.1.1 for rules governing state transitions.

Attributes shall be valued as indicated by the Final State Codes in the Final State Column of Table CC.2.5-3 before the Procedure Step State (0074,1000) may be set to COMPLETED or CANCELED (i.e., Final State).

Performing systems are encouraged to ensure that the values for all Attributes reasonably reflect what was done and the Final State of the UPS. This may include blanking Attributes that are permitted to be empty and for which no reasonable value can be determined. The UPS contents should make it clear whether the step was completed, what work was done, what results were produced and whether the results are usable. See Section GGG.3.1 “What Was Scheduled Vs. What Was Performed” in PS3.17 for a discussion of methods to convey things like partial completion.

### Note

The SCU may choose not to distribute, or otherwise make available, some or all instances created during the procedure step and referenced in the Output Information Sequence (0040,4033).

Table CC.2.5-1. Final State Codes

Final State Code | Meaning
--- | ---
R | The UPS State shall not be set to COMPLETED or CANCELED if this Attribute does not have a value.
RC | The UPS State shall not be set to COMPLETED or CANCELED if the condition is met and this Attribute does not have a value.
P | The UPS State shall not be set to COMPLETED if this Attribute does not have a value, but may be set to CANCELED.
X | The UPS State shall not be set to CANCELED if this Attribute does not have a value, but may be set to COMPLETED.
O | The UPS State may be set to either COMPLETED or CANCELED if this Attribute does not have a value.

##### CC.2.5.1.2 UPS Macros

To reduce the size and complexity of Table CC.2.5-3, a macro notation is used.

For example, in Table CC.2.5-3, a table entry specifying "Include Table CC.2.5-2a “UPS Code Sequence Macro”" should be interpreted as including the following table of text as a substitution. The nesting level for the sequence inclusion is indicated by the nesting level on the reference to the macro. Where the matching key type requirement is "*" it should be replaced with the matching key type requirement of the sequence Attribute that incorporates this macro.

For code sequences that have requirements for N-CREATE, N-SET, N-GET, or C-FIND behavior that differ from the Macro, the code sequence contents are explicitly listed in the Table rather than specifying inclusion of the Macro.

Table CC.2.5-2a. UPS Code Sequence Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Code Value | (0008,0100) | 1/1 | 1/1 |  | -/1 | * | 1 | Code Value shall be retrieved with Single Value Matching.
Coding Scheme Designator | (0008,0102) | 1/1 | 1/1 |  | -/1 | * | 1 | Coding Scheme Designator shall be retrieved with Single Value Matching.
Coding Scheme Version | (0008,0103) | 1C/1C | 1C/1C |  | -/1 | - | 1C | Required if the value of Coding Scheme Designator (0008,0102) is not sufficient to identify the Code Value (0008,0100) unambiguously.
Code Meaning | (0008,0104) | 1/1 | 1/1 |  | -/1 | - | 1 | Code Meaning shall not be used as Matching Key.

Table CC.2.5-2b. UPS Content Item Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Value Type | (0040,A040) | 1/1 | 1/1 |  | -/1 | * | 1 | The type of the value encoded in this name-value Item. Enumerated Values: DATETIME DATE TIME PNAME UIDREF TEXT CODE NUMERIC
Concept Name Code Sequence | (0040,A043) | 1/1 | 1/1 |  | -/1 | * | 1 | Coded concept name of this name-value Item.
>Include Table CC.2.5-2a “UPS Code Sequence Macro” | No Baseline CID is defined.
DateTime | (0040,A120) | 1C/1C | 1/1 |  | -/1 | * | 1C | Datetime value for this name-value Item. Required if Value Type (0040,A040) is DATETIME.
Date | (0040,A121) | 1C/1C | 1/1 |  | -/1 | * | 1C | Date value for this name-value Item. Required if Value Type (0040,A040) is DATE.
Time | (0040,A122) | 1C/1C | 1/1 |  | -/1 | * | 1C | Time value for this name-value Item. Required if Value Type (0040,A040) is TIME.
Person Name | (0040,A123) | 1C/1C | 1/1 |  | -/1 | * | 1C | Person name value for this name-value Item. Required if Value Type (0040,A040) is PNAME.
UID | (0040,A124) | 1C/1C | 1/1 |  | -/1 | * | 1C | UID value for this name-value Item. Required if Value Type (0040,A040) is UIDREF.
Text Value | (0040,A160) | 1C/1C | 1/1 |  | -/1 | * | 1C | Text value for this name-value Item. Required if Value Type (0040,A040) is TEXT.
Concept Code Sequence | (0040,A168) | 1C/1C | 1/1 |  | -/1 | * | 1C | Coded concept value of this name-value Item. Required if Value Type (0040,A040) is CODE.
>Include Table CC.2.5-2a “UPS Code Sequence Macro” | No Baseline CID is defined.
Numeric Value | (0040,A30A) | 1C/1C | 1/1 |  | -/1 | * | 1C | Numeric value for this name-value Item. Required if Value Type (0040,A040) is NUMERIC.
Measurement Units Code Sequence | (0040,08EA) | 1C/1C | 1/1 |  | -/1 | * | 1C | Units of measurement for a numeric value in this name-value Item. Required if Value Type (0040,A040) is NUMERIC.
>Include Table CC.2.5-2a “UPS Code Sequence Macro” | Baseline CID 82 “Units of Measurement”

Table CC.2.5-2c. Referenced Instances and Access Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Type of Instances | (0040,E020) | 1/1 | 1/1 |  | -/1 | O | 1 |
Study Instance UID | (0020,000D) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if Type of Instances (0040,E020) is DICOM and the Information Model of the referenced instance contains the Study IE
Series Instance UID | (0020,000E) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if Type of Instances (0040,E020) is DICOM and the Information Model of the referenced instance contains the Series IE
Referenced SOP Sequence | (0008,1199) | 1/1 | 1/1 |  | -/1 | O | 1 |
>Referenced SOP Class UID | (0008,1150) | 1/1 | 1/1 |  | -/1 | O | 1 |
>Referenced SOP Instance UID | (0008,1155) | 1/1 | 1/1 |  | -/1 | O | 1 |
>HL7 Instance Identifier | (0040,E001) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if Type of Instances (0040,E020) is CDA.
>Referenced Frame Number | (0008,1160) | 1C/1 | 1C/1 |  | -/2 | O | 1C | Required if the Referenced SOP Instance is a multi-frame image and the reference does not apply to all frames, and Referenced Segment Number (0062,000B) is not present.
>Referenced Segment Number | (0062,000B) | 1C/1 | 1C/1 |  | -/2 | O | 1C | Required if the Referenced SOP Instance is a Segmentation and the reference does not apply to all segments and Referenced Frame Number (0008,1160) is not present.
DICOM Retrieval Sequence | (0040,E021) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Media Retrieval Sequence (0040,E022), WADO Retrieval Sequence (0040,E023), WADO-RS Retrieval Sequence (0040,E025) and XDS Retrieval Sequence (0040,E024) are not present. May be present otherwise.
>Retrieve AE Title | (0008,0054) | 1/1 | 1/1 |  | -/1 | O | 1 |
DICOM Media Retrieval Sequence | (0040,E022) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Retrieval Sequence (0040,E021), WADO Retrieval Sequence (0040,E023), WADO-RS Retrieval Sequence (0040,E025) and XDS Retrieval Sequence (0040,E024) are not present. May be present otherwise.
>Storage Media File-Set ID | (0088,0130) | 2/2 | 2/2 |  | -/2 | O | 2 |
>Storage Media File-Set UID | (0088,0140) | 1/1 | 1/1 |  | -/1 | O | 1 |
WADO Retrieval Sequence | (0040,E023) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Retrieval Sequence (0040,E021), DICOM Media Retrieval Sequence (0040,E022), WADO-RS Retrieval Sequence (0040,E025) and XDS Retrieval Sequence (0040,E024) are not present. May be present otherwise.
>Retrieve URI | (0040,E010) | 1/1 | 1/1 |  | -/1 | O | 1 |
XDS Retrieval Sequence | (0040,E024) | 1C | 1C/1 |  | -/1 | O | 1C | Required if DICOM Retrieval Sequence (0040,E021), DICOM Media Retrieval Sequence (0040,E022), WADO-RS Retrieval Sequence (0040,E025) and WADO Retrieval Sequence (0040,E023) are not present. May be present otherwise.
>Repository Unique ID | (0040,E030) | 1 | 1/1 |  | -/1 | O | 1 |
>Home Community ID | (0040,E031) | 3/2 | 3/2 |  | 3/2 | O | 2 |
WADO-RS Retrieval Sequence | (0040,E025) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Retrieval Sequence (0040,E021), DICOM Media Retrieval Sequence (0040,E022), WADO Retrieval Sequence (0040,E023), and XDS Retrieval Sequence (0040,E024) are not present. May be present otherwise.
>Retrieve URL | (0008,1190) | 1/1 | 1/1 |  | -/1 | O | 1 | URL specifying the location of the referenced instance(s).

Table CC.2.5-2d. HL7V2 Hierarchic Designator Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Local Namespace Entity ID | (0040,0031) | 1C/1 | Not Allowed |  | -/1 | * | 1C | Creation required if Universal Entity ID (0040,0032) is not present; may be present otherwise. Return Key required if set.
Universal Entity ID | (0040,0032) | 1C/1 | Not Allowed |  | -/1 | * | 1C | Creation required if Local Namespace Entity ID (0040,0031) is not present; may be present otherwise. Return Key required if set.
Universal Entity ID Type | (0040,0033) | 1C/1 | Not Allowed |  | -/1 | * | 1C | Creation required if Universal Entity ID (0040,0032) is present. Return Key required if set.
Local Namespace Entity ID | (0040,0031) | 1C/1 | Not Allowed |  | -/1 | * | 1C | Creation required if Universal Entity ID (0040,0032) is not present; may be present otherwise. Return Key required if set.

Table CC.2.5-2e. Issuer of Patient ID Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Issuer of Patient ID | (0010,0021) | 2/2 | Not allowed | O | 3/2 | R | 2 |
Issuer of Patient ID Qualifiers Sequence | (0010,0024) | 2/2 | Not allowed | O | 3/2 | O | 2 |
>Universal Entity ID | (0040,0032) | 2/2 | Not allowed | O | 3/2 | O | 2 |
>Universal Entity ID Type | (0040,0033) | 1C/1 | Not allowed | O | 3/2 | O | 1C | Required if Universal Entity ID (0040,0032) is present in this item with a value.
>Identifier Type Code | (0040,0035) | 2/2 | Not allowed | O | 3/2 | O | 2 |
>Assigning Facility Sequence | (0040,0036) | 2/2 | Not allowed | O | 3/2 | O | 2 | The Attributes of the Assigning Facility Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2d “HL7V2 Hierarchic Designator Macro” |
>Assigning Jurisdiction Code Sequence | (0040,0039) | 2/2 | Not allowed | O | 3/2 | O | 2 | The Attributes of the Assigning Jurisdiction Code Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2a “UPS Code Sequence Macro” | Baseline CID 5001 “Countries” for country codes.
>Assigning Agency or Department Code Sequence | (0040,003A) | 2/2 | Not allowed | O | 3/2 | O | 2 | The Attributes of the Assigning Agency or Department Code Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2a “UPS Code Sequence Macro” | No Baseline CID.

Table CC.2.5-2f. SOP Instance Reference Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Referenced SOP Class UID | (0008,1150) | 1/1 | 1/1 |  | -/1 | * | 1 |
Referenced SOP Instance UID | (0008,1155) | 1/1 | 1/1 |  | -/1 | * | 1 |

Table CC.2.5-2g. Storage Macro

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Referenced SOP Class UID | (0008,1150) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if the storage request only applies to a specific SOP Class.
DICOM Storage Sequence | (0040,4071) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if STOW-RS Storage Sequence (0040,4072) and XDS Storage Sequence (0040,4074) are not present. May be present otherwise.
>Destination AE | (0040,4071) | 1/1 | 1/1 |  | -/1 | * | 1 |
STOW-RS Storage Sequence | (0040,4072) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Storage Sequence (0040,4071) and XDS Storage Sequence (0040,4074) are not present. May be present otherwise.
>Storage URL | (0040,4073) | 1/1 | 1/1 |  | -/1 | * | 1 |
XDS Storage Sequence | (0040,4074) | 1C/1 | 1C/1 |  | -/1 | O | 1C | Required if DICOM Storage Sequence (0040,4071) and STOW-RS Storage Sequence (0040,4072) are not present. May be present otherwise.
>Repository Unique ID | (0040,E030) | 1/1 | 1/1 |  | -/1 | * | 1 |
>Home Community ID | (0040,E031) | 3/2 | 3/2 |  | 3/2 | * | 2 |

##### CC.2.5.1.3 UPS Attribute Service Requirements

This table combines the Attribute requirements for multiple DIMSE services (N-CREATE, N-SET, N-GET, C-FIND) to facilitate consistency between the requirements.

See PS3.4 for the meaning of the requirement codes used in the N-CREATE, N-SET, N-GET and Return Key columns in the following table.

See Section C.1.2 for the meaning of the requirement codes used in the Match Key column in the following table.

See Table CC.2.5-1 for the meaning of the requirement codes used in the Final State column of the following table.

Table CC.2.5-3. UPS SOP Class N-CREATE/N-SET/N-GET/C-FIND Attributes

Attribute Name | Tag | Req. Type N-CREATE (SCU/SCP) | Req. Type N-SET (SCU/SCP) | Final State | Req. Type N-GET (SCU/SCP) | Match Key Type | Return Key Type | Remark/Matching Type
--- | --- | --- | --- | --- | --- | --- | --- | ---
Transaction UID | (0008,1195) | 2/2 Shall be empty | (see CC.2.6.3) | O | Not allowed | - | - | Cannot be queried.
SOP Common Module
Specific Character Set | (0008,0005) | 1C/1C | 1C/1C | RC | 3/1 | - | 1C | Required if extended or replacement character set is used
SOP Class UID | (0008,0016) | See CC.2.5.1.3.1 | Not allowed | R | Not allowed | O | 1 | Uniquely identifies the SOP Class of the Unified Procedure Step. See Section CC.3.1 for further explanation.
SOP Instance UID | (0008,0018) | Not allowed. SOP Instance is conveyed in the Affected SOP Instance UID (0000,1000) | Not allowed. SOP Instance is conveyed in the Requested SOP Instance UID (0000,1001) | R | Not allowed. SOP Instance is conveyed in the Requested SOP Instance UID (0000,1001) | U | 1 | Uniquely identifies the SOP Instance of the UPS. SOP Instance UID shall be retrieved with Single Value Matching.
All other Attributes of the SOP Common Module |  | 3/3 | 3/3 | O | 3/3 | - | - |
Unified Procedure Step Scheduled Procedure Information Module
Scheduled Procedure Step Priority | (0074,1200) | 1/1 | 3/1 | R | 3/1 | R | 1 | Scheduled Procedure Step Priority shall be retrieved with Single Value Matching.
Scheduled Procedure Step Modification Date and Time | (0040,4010) | 2/1 SCP shall use time of CREATE rather than any value provided | -/1 SCP will use time of SET | R | 3/1 | O | 3 | Scheduled Procedure Step Modification Date and Time shall be retrieved with Single Value Matching or Range Matching.
Procedure Step Label | (0074,1204) | 1/1 | 3/1 | O | 3/1 | R | 1 |
Worklist Label | (0074,1202) | 2/1 If a value is not provided by the SCU, the SCP shall fill in the Worklist Label, e.g., using a default value or by assigning the UPS instance to a logical worklist. | 3/1 | O | 3/1 | R | 1 |
Scheduled Processing Parameters Sequence | (0074,1210) | 2/2 | 3/2 | O | 3/2 | - | 2 |
>Include Table CC.2.5-2b “UPS Content Item Macro”
Scheduled Station Name Code Sequence | (0040,4025) | 2/2 | 3/2 | O | 3/2 | R | 2 | The Attributes of the Scheduled Station Name Code Sequence shall only be retrieved with Sequence Matching. ### Note In Push Scenario, the SCP-Performer has to create empty but could self fill later.
>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Scheduled Station Class Code Sequence | (0040,4026) | 2/2 | 3/2 | O | 3/2 | R | 2 | The Attributes of the Scheduled Station Class Code Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Scheduled Station Geographic Location Code Sequence | (0040,4027) | 2/2 | 3/2 | O | 3/2 | R | 2 | The Attributes of the Scheduled Station Geographic Location Code Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Scheduled Human Performers Sequence | (0040,4034) | 2C/2C | 3/2 | O | 3/2 | R | 2 | The Attributes of the Scheduled Human Performers Sequence shall only be retrieved with Sequence Matching. Required if a Human Performer is specified.
>Human Performer Code Sequence | (0040,4009) | 1/1 | 1/1 | O | -/1 | R | 1 | The Attributes of the Scheduled Human Performers Code Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Human Performer's Name | (0040,4037) | 1/1 | 1/1 | O | -/1 | O | 3 |
>Human Performer's Organization | (0040,4036) | 1/1 | 1/1 | O | -/1 | O | 3 |
Scheduled Procedure Step Start Date and Time | (0040,4005) | 1/1 | 3/1 | R | 3/1 | R | 1 | Scheduled Procedure Step Start Date and Time shall be retrieved with Single Value Matching or Range Matching.
Expected Completion Date and Time | (0040,4011) | 3/1 | 3/1 | O | 3/1 | R | 3 | Expected Completion Date and Time shall be retrieved with Single Value Matching or Range Matching.
Scheduled Procedure Step Expiration Date Time | (0040,4008) | 3/3 | 3/3 | O | 3/3 | O | 3 | Scheduled Procedure Step Expiration Date and Time shall be retrieved with Single Value Matching or Range Matching.
Scheduled Workitem Code Sequence | (0040,4018) | 2/2 | 3/1 | O | 3/1 | R | 2 | The Attributes of the Scheduled Workitem Code Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Comments on the Scheduled Procedure Step | (0040,0400) | 2/2 | 3/1 | O | 3/1 | O | 3 |
Input Readiness State | (0040,4041) | 1/1 | 3/1 | R | 3/1 | R | 1 | Input Readiness State shall be retrieved with Single Value Matching.
Input Information Sequence | (0040,4021) | 2/2 | 3/2 | O | 3/2 | O | 2 | The Attributes of the Input Information Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2c “Referenced Instances and Access Macro”
Study Instance UID | (0020,000D) | 1C/2 | 3/2 | O | 3/2 | O | 2 | Required if the Workitem is expected to result in the creation of any DICOM Composite Instances whose IOD contains the Study IE. There may be situations where the performer does not use the Study Instance UID suggested by the Scheduler.
Output Destination Sequence | (0040,4070) | 3/3 | 3/3 | O | 3/3 | O | 3 | The Attributes of the Output Destination Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2g “Storage Macro”
All other Attributes of the Unified Procedure Step Scheduled Procedure Information Module |  | 3/3 | 3/3 | O | 3/3 | - | - |
Unified Procedure Step Relationship Module
Patient's Name | (0010,0010) | 2/2 | Not allowed | O | 3/2 | R | 2 |
Patient ID | (0010,0020) | 1C/2 | Not allowed | O | 3/2 | R | 2 | Required if the subject of the workitem requires identification or if the workitem is expected to result in the creation of objects that identify the subject. See Section C.30.4.1 “Patient Identification” in PS3.3
Include Table CC.2.5-2e “Issuer of Patient ID Macro”
Other Patient IDs Sequence | (0010,1002) | 2/2 | 3/3 | O | 3/2 | O | 2 |
>Patient ID | (0010,0020) | 1/1 | 1/1 | O | -/1 | O | 1 |
>Include Table CC.2.5-2e “Issuer of Patient ID Macro”
Patient's Birth Date | (0010,0030) | 2/2 | Not allowed | O | 3/2 | R | 2 |
Patient's Sex | (0010,0040) | 2/2 | Not allowed | O | 3/2 | R | 2 |
Referenced Patient Photo Sequence | (0010,1100) | 3/3 | 3/3 | O | 3/3 | - | 3 |
>Include Table CC.2.5-2c “Referenced Instances and Access Macro”
Admission ID | (0038,0010) | 2/2 | Not allowed | O | 3/2 | R | 2 |
Issuer of Admission ID Sequence | (0038,0014) | 2/2 | Not allowed | O | 3/2 | R | 2 |
>Include Table CC.2.5-2d “HL7V2 Hierarchic Designator Macro”
Admitting Diagnoses Description | (0008,1080) | 2/2 | Not allowed | O | 3/2 | O | 2 |
Admitting Diagnoses Code Sequence | (0008,1084) | 2/2 | Not allowed | O | 3/2 | O | 2 | The Attributes of the Admitting Diagnoses Code Sequence shall only be retrieved with Sequence Matching.
>Include Table CC.2.5-2a “UPS Code Sequence Macro”.
Referenced Request Sequence | (0040,A370) | 2/2 | Not allowed | O | 3/2 | R | 2 | Could be "changed" while SCHEDULED by canceling and re-creating with the "correct" values.
>Study Instance UID | (0020,000D) | 1/1 | Not allowed | O | -/1 | O | 1 |
>Accession Number | (0008,0050) | 2/2 | Not allowed | O | -/2 | R | 2 |
>Issuer of Accession Number Sequence | (0008,0051) | 2/2 | Not allowed | O | -/2 | R | 2 | The Issuer of Accession Number Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2d “HL7V2 Hierarchic Designator Macro”
>Placer Order Number/Imaging Service Request | (0040,2016) | 3/1 | Not allowed | O | -/1 | O | 1C | Required if set.
>Order Placer Identifier Sequence | (0040,0026) | 2/2 | Not allowed | O | -/2 | O | 2 | The Order Placer Identifier Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2d “HL7V2 Hierarchic Designator Macro”
>Filler Order Number/Imaging Service Request | (0040,2017) | 3/1 | Not allowed | O | -/1 | O | 1C | Required if set.
>Order Filler Identifier Sequence | (0040,0027) | 2/2 | Not allowed | O | -/2 | O | 2 | The Order Filler Identifier Sequence shall only be retrieved with Sequence Matching.
>>Include Table CC.2.5-2d “HL7V2 Hierarchic Designator Macro”
>Requested Procedure ID | (0040,1001) | 2/2 | Not allowed | O | -/2 | R | 2 |
>Requested Procedure Description | (0032,1060) | 2/2 | Not allowed | O | -/2 | O | 2 |
>Requested Procedure Code Sequence | (0032,1064) | 2/2 | Not allowed | O | -/2 | O | 2 |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Reason for the Requested Procedure | (0040,1002) | 3/3 | 3/3 | O | -/3 | - | - |
> Reason for Requested Procedure Code Sequence | (0040,100A) | 3/3 | 3/3 | O | -/3 | - | - |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Requested Procedure Comments | (0040,1400) | 3/3 | 3/3 | O | -/3 | O | 1C | Required if set.
>Confidentiality Code | (0040,1008) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Names of Intended Recipients of Results | (0040,1010) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Imaging Service Request Comments | (0040,2400) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Requesting Physician | (0032,1032) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Requesting Service | (0032,1033) | 3/1 | 3/1 | O | -/3 | R | 3 |
>Requesting Service Code Sequence | (0032,1034) | 3/3 | 3/3 | O | -/3 | O | 3 |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Issue Date of Imaging Service Request | (0040,2004) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Issue Time of Imaging Service Request | (0040,2005) | 3/3 | 3/3 | O | -/3 | O | 3 |
>Referring Physician's Name | (0008,0090) | 3/3 | 3/3 | O | -/3 | O | 3 |
Replaced Procedure Step Sequence | (0074,1224) | 1C/1C | Not allowed | O | 3/2 | R | 3 | Required if the UPS replaces another Procedure Step.
>Include Table CC.2.5-2f “SOP Instance Reference Macro”
Patient Medical Module
Medical Alerts | (0010,2000) | 3/2 | 3/2 | O | 3/2 | O | 2C | Required if present.
Pregnancy Status | (0010,21C0) | 3/2 | 3/2 | O | 3/2 | O | 2C | Required if present.
Special Needs | (0038,0050) | 3/2 | 3/2 | O | 3/2 | O | 2C | Required if present.
All other Attributes of the Patient Medical Module |  | 3/3 | 3/3 | O | 3/3 | O | 3 |
Unified Procedure Step Progress Information Module
Procedure Step State | (0074,1000) | 1/1 Shall be created with a value of "SCHEDULED" | Not Allowed. Use N-ACTION | R | 3/1 | R | 1 | Procedure Step State shall be retrieved with Single Value Matching
Progress Information Sequence | (0074,1002) | 2/2 Shall be empty | 3/2 | X | 3/2 |  | 2 |
>Procedure Step Progress | (0074,1004) | Not Allowed | 3/1 | O | -/1 | - | - |
>Procedure Step Progress Description | (0074,1006) | Not Allowed | 3/1 | O | -/1 | - | - |
>Procedure Step Progress Parameters Sequence | (0074,1007) | Not Allowed | 3/3 | O | -/3 |  |  |
>>Include Table CC.2.5-2b “UPS Content Item Macro”
>>Content Item Modifier Sequence | (0040,0441) | Not Allowed | 3/3 | O | -/3 |  |  |
>>>Include Table CC.2.5-2b “UPS Content Item Macro”
>Procedure Step Communications URI Sequence | (0074,1008) | Not Allowed | 3/1 | O | -/1 | - | - |
>>Contact URI | (0074,100a) | Not Allowed | 1/1 | O | -/1 | - | - |
>>Contact Display Name | (0074,100c) | Not Allowed | 3/1 | O | -/1 | - | - |
>Procedure Step Cancellation DateTime | (0040,4052) | Not Allowed | 3/1 | X | -/1 | - | - | If changing the UPS State (0074,1000) to CANCELED and this Attribute has no value, the SCP shall fill it with the current datetime.
>Reason For Cancellation | (0074,1238) | Not Allowed | 3/1 | O | -/1 | - | - |
>Procedure Step Discontinuation Reason Code Sequence | (0074,100e) | Not Allowed | 3/1 | X | -/1 |  |  |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Unified Procedure Step Performed Procedure Information Module
Unified Procedure Step Performed Procedure Sequence | (0074,1216) | 2/2 Shall be created empty | 3/2 | P | 3/2 | - | - | See CC.2.5.1.3.2.
>Actual Human Performers Sequence | (0040,4035) | Not Allowed | 3/1 | RC | -/1 | O | 1C | Shall be provided if known. Return Key required if set. The Attributes of the Actual Human Performers Sequence shall only be retrieved with Sequence Matching.
>>Human Performer Code Sequence | (0040,4009) | Not Allowed | 3/1 | RC | -/1 | - | - | Shall be provided if known.
>>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>>Human Performer's Name | (0040,4037) | Not Allowed | 3/1 | RC | -/1 | - | - | Shall be provided if known
>>Human Performer's Organization | (0040,4036) | Not Allowed | 3/1 | O | -/1 | - | - |
>Performed Station Name Code Sequence | (0040,4028) | Not Allowed | 3/2 | P | -/2 | O | 3 |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Performed Station Class Code Sequence | (0040,4029) | Not Allowed | 3/2 | O | -/2 | - | - |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Performed Station Geographic Location Code Sequence | (0040,4030) | Not Allowed | 3/2 | O | -/2 | - | - |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Performed Procedure Step Start DateTime | (0040,4050) | Not Allowed | 3/1 | P | -/1 | - | - |
>Performed Procedure Step Description | (0040,0254) | Not Allowed | 3/1 | O | -/1 | - | - |
>Comments on the Performed Procedure Step | (0040,0280) | Not Allowed | 3/1 | O | -/1 | - | - |
>Performed Workitem Code Sequence | (0040,4019) | Not Allowed | 3/1 | P | -/1 | - | - |
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Performed Processing Parameters Sequence | (0074,1212) | Not Allowed | 3/1 | O | -/1 | - | - |
>>Include Table CC.2.5-2b “UPS Content Item Macro”
>Performed Procedure Step End DateTime | (0040,4051) | Not Allowed | 3/1 | P | -/1 | O | 1C | Required if set.
>Output Information Sequence | (0040,4033) | Not Allowed | 2/2 | P | -/2 | - | - | If there are no relevant output objects, then this sequence may have no items.
>Include Table CC.2.5-2c “Referenced Instances and Access Macro”

###### CC.2.5.1.3.1 UPS SOP Class UID

The SOP Class UID shall be set to 1.2.840.10008.5.1.4.34.6.1 by SCP

###### CC.2.5.1.3.2 Unified Procedure Step Performed Procedure Sequence

The Attributes of the UPS Performed Procedure Sequence shall only be retrieved with Sequence Matching.

### Note

Since this Attribute may be created empty and has a Final State requirement of X, a UPS in the SCHEDULED state may be canceled with two N-ACTIONS (IN PROGRESS then CANCELED) and no N-SETs.

#### CC.2.5.2 Service Class User Behavior

An SCU uses N-CREATE to request the SCP schedule a new UPS.

The SCU shall specify in the N-CREATE request primitive the UPS Push SOP Class UID and the SOP Instance UID for the UPS that is to be created and for which Attribute Values are to be provided. See Section CC.3.1 for further discussion of UPS SOP Class UIDs.

The SCU shall provide Attribute values in the N-CREATE request primitive for all required UPS Attributes as specified in Table CC.2.5-3. Additionally, values may be provided for optional Attributes as specified in Table CC.2.5-3.

The SCU shall specify a value of "SCHEDULED" for the Attribute Procedure Step State (0074,1000) in the N-CREATE request primitive.

#### CC.2.5.3 Service Class Provider Behavior

The SCP shall create and maintain UPS instances as instructed by creation requests and as specified by Table CC.2.5-3.

The SCP shall return, via the N-CREATE response primitive, the N-CREATE Response Status Code applicable to the associated request.

The SCP shall accept creation requests only if the value of the Procedure Step State (0074,1000) Attribute is "SCHEDULED". If the Procedure Step State Attribute has another value, the SCP shall fail the request.

The SCP may modify Attributes of a UPS instance, e.g., to correct invalid Attribute values. A description of the modifications the SCP may perform shall be documented in the conformance statement of the SCP.

The SCP may also create and maintain UPS instances without receiving a UPS instance N-CREATE request, e.g., based on internal logic, operator inputs or HL7 messages. The contents of the instance created by the SCP must still comply with the N-CREATE requirements in Table CC.2.5-3.

Upon creating a new UPS Instance, the SCP shall update UPS Subscription Status of the Instance for each AE with a Global Subscription as described in Section CC.2.3. Optionally, the SCP may create a UPS Subscription for the N-CREATE SCU AE; such behavior shall be documented in the Conformance Statement.

Upon creating a new UPS Instance, the SCP shall send UPS State Reports (if it supports the UPS Event SOP Class) as described in Section CC.2.4.3 regardless of whether the creation was based on an N-CREATE or on internal logic.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. There are no specific requirements to perform authorization.

#### CC.2.5.4 Status Codes

Table CC.2.5-4 defines the status code values that might be returned in a N-CREATE response. General status code values and fields related to status code values are defined for N-CREATE DIMSE Service in PS3.7.

Table CC.2.5-4. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | The UPS was created as requested | 0000
Warning | The UPS was created with modifications | B300
Failure | Failed: The provided value of UPS State was not "SCHEDULED". | C309

### CC.2.6 Set Unified Procedure Step Information (N-SET)

This operation allows an SCU to set Attribute Values of a UPS Instance and provide information about a specific real-world UPS that is under control of the SCU. This operation shall be invoked by the SCU through the DIMSE N-SET Service.

#### CC.2.6.1 Unified Procedure Step IOD Subset Specification

The Application Entity that claims conformance to the UPS Pull SOP Class as an SCU may choose to modify a subset of the Attributes maintained by the SCP. The Application Entity that claims conformance as an SCP to the UPS Pull SOP Class shall support Attributes specified in Table CC.2.5-3

#### CC.2.6.2 Service Class User Behavior

The SCU shall specify in the N-SET request primitive the UID of the UPS Instance for which it wants to set Attribute Values. Since all UPSs are created as instances of the UPS Push SOP Class, the Requested SOP Class UID in the N-SET request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details.

To N-SET a UPS instance currently in the SCHEDULED state, the Transaction UID Attribute shall not be present in the request. For a UPS instance in the IN PROGRESS state, the SCU shall provide the current Transaction UID (0008,1195) as an Attribute.

The SCU shall be permitted to set Attribute values as specified in Table CC.2.5-3. The SCU shall specify the list of Attributes for which it wants to set the Attribute Values. The SCU shall provide, with one or more N-SET request primitives, the Attribute values specified in Table CC.2.5-3.

When modifying a sequence, the SCU shall include in the N-SET request all Items in the sequence, not just the Items to be modified.

N-SET requests shall be atomic (indivisible) and idempotent (repeat executions have no additional effect). Since it is possible for an N-GET to occur between two N-SET requests, any given N-SET shall leave the UPS instance in an internally consistent state (i.e., when multiple Attributes need updating as a group, do this as multiple Attributes in a single N-SET request, not as multiple N-SET requests)

The SCU shall not set the value of the Procedure Step State (0074,1000) Attribute using N-SET. Procedure Step State is managed using N-ACTION as described in Section CC.2.1

The SCU shall create or set all Attributes to meet Final State requirements prior to using N-ACTION to set the value of Procedure Step State (0074,1000) to "COMPLETED" or "CANCELED". See Section CC.2.5.1.1 for further details.

Once the Procedure Step State (0074,1000) has been set to "COMPLETED" or "CANCELED" the SCU shall no longer modify the UPS SOP Instance.

### Note

The SCU can only set Attribute Values that have already been created with an N-CREATE request.

#### CC.2.6.3 Service Class Provider Behavior

The SOP Class UID of the specified UPS instance will always be the UPS Push SOP Class UID, which might not match the UPS SOP Class negotiated with the SCU. See Section CC.3.1 for further details.

The SCP shall support the Attribute changes to the UPS instance specified by the SCU in the set request as specified in Table CC.2.5-3.

The SCP shall refuse set requests on an IN PROGRESS UPS and not modify the UPS if the set request does not include the Transaction UID (0008,1195) Attribute with the same value as currently recorded in the UPS instance.

The SCP shall refuse set requests on a COMPLETED or CANCELED UPS.

The SCP shall use the Specific Character Set (0008,0005) value to appropriately modify its internal representation so that subsequent operations reflect the combination of the character sets in use by the Attributes in this request and those used by Attributes that have not been modified.

The SCP shall return, via the N-SET response primitive, the N-SET Response Status Code applicable to the associated request as specified in Section CC.2.6.4.

The SCP may itself modify any Attributes of a UPS instance independently of an N-SET request, e.g., if the SCP is performing the procedure step itself, if it has been determined that the performing SCU has been disabled, or if it is necessary to correct Attribute values after completion of the procedure in order to carry out reconciliation of the data. A description of the coercions the SCP may perform shall be documented in the conformance statement of the SCP.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. There are no specific requirements to perform authorization.

#### CC.2.6.4 Status Codes

Table CC.2.6-1 defines the status code values that might be returned in a N-SET response. General status code values and fields related to status code values are defined for N-SET DIMSE Service in PS3.7.

Table CC.2.6-1. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | The requested modification of the Attribute values is performed | 0000
Warning | Requested optional Attributes are not supported. | 0001
Coerced invalid values to valid values | B305
Failure | Failed: The UPS is not in the "IN PROGRESS" state | C310
Failed: The correct Transaction UID was not provided | C301
Failed: The UPS may no longer be updated | C300
Failed: Specified SOP Instance UID does not exist or is not a UPS Instance managed by this SCP | C307

### CC.2.7 Get Unified Procedure Step Information (N-GET)

This operation allows an SCU to get information from an SCP about a specific real-world Procedure Step that is represented as a Unified Procedure Step Instance. This operation shall be invoked by the SCU through the DIMSE N-GET Service.

#### CC.2.7.1 Unified Procedure Step IOD Subset Specification

The Application Entity that claims conformance to the UPS Pull or UPS Watch SOP Classes as an SCU may choose to retrieve a subset of the Attribute values maintained by the SCP. The Application Entity that claims conformance as an SCP to these SOP Classes shall support the Attributes specified in Table CC.2.5-3.

#### CC.2.7.2 Service Class User Behavior

The SCU uses the N-GET to request the SCP to provide Attributes and values of a Unified Procedure Step Instance. Since all UPSs are created as instances of the UPS Push SOP Class, the Affected SOP Class UID (0000,0002) in the N-GET request shall be the UID of the UPS Push SOP Class. See Section CC.3.1 for further details.

The SCU shall specify in the N-GET Service Element the UID of the SOP Instance from which Attributes are to be retrieved.

The SCU shall specify the list of Unified Procedure Step Attributes for which values are to be returned. The SCU shall not specify Attributes that are defined within a Sequence, but rather specify the sequence itself to be retrieved in its entirety.

The SCU shall not request the value of the Transaction UID (0008,1195) Attribute.

The SCU may request Attribute Values for optional Attributes that are not maintained by the SCP. In such a case, the SCU shall function properly regardless of whether the SCP returns values for those Attributes or not. This Service Class Specification places no requirements on what the SCU shall do as a result of receiving this information.

### Note

In order to accurately interpret the character set used for the Attribute Values returned, it is recommended that the Attribute Value for the Specific Character Set (0008,0005) be requested in the N-GET request primitive.

The SCU shall be permitted to request and shall be capable of receiving values for any Attribute as specified in Table CC.2.5-3. Additionally, values may be requested for optional Attributes.

The SCU shall be capable of receiving all requested Attribute Values provided by the SCP in response to the N-GET indication primitive.

### Note

If the SCU or the user will need access to the final state Attributes it is the responsibility of the SCU to Subscribe (see Section CC.2.2) in order to receive State Change Events and then N-GET the necessary Attributes promptly upon notification of a state change to COMPLETED or CANCELED. If the SCU sets the Deletion Lock when subscribing, a COMPLETED or CANCELED instance will continue to persist on the SCP, using resources. It is important that the SCU remove the lock (e.g., by unsubscribing) after doing the N-GET on the COMPLETED or CANCELED instance.

#### CC.2.7.3 Service Class Provider Behavior

The SOP Class UID of the specified UPS instance will always be the UPS Push SOP Class UID, which might not match the UPS SOP Classes negotiated with the SCU. See Section CC.3.1 for further details.

The SCP shall return, via the N-GET response primitive, the selected Attribute values from the indicated Unified Procedure Step Instance to the SCU.

### Note

The requirement for the SCP to respond to N-GET requests for UPS Instances that have moved to the COMPLETED or CANCELED state is limited. See Section CC.2.1.3 Service Class Provider Behavior.

The SCP shall not return the Transaction UID (0008,1195) Attribute. This is necessary to preserve this Attribute's role as an access lock.

The SCP shall return, via the N-GET response primitive, the N-GET Response Status Code applicable to the associated request. A Failure Code shall indicate that the SCP has not retrieved the SOP Instance.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. Further requiring or documenting authentication and/or authorization features from the SCU or SCP is beyond the scope of this SOP Class.

#### CC.2.7.4 Status Codes

Table CC.2.7-1 defines the status code values that might be returned in a N-GET response. General status code values and fields related to status code values are defined for N-GET DIMSE Service in PS3.7.

Table CC.2.7-1. Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Warning | Requested optional Attributes are not supported | 0001
Failure | Failed: Specified SOP Instance UID does not exist or is not a UPS Instance managed by this SCP | C307

### CC.2.8 Search for Unified Procedure Step (C-FIND)

This operation allows an SCU to locate and get information about Unified Procedure Step instances of interest that are managed by an SCP. This operation shall be invoked by the SCU through the DIMSE C-FIND Service. The SCP processes such queries, matches UPS instances it manages against the keys present in the Identifier and returns C-FIND responses.

The SCU might be searching for UPS instance with the intention of starting work on one of them or perhaps with the intention of subscribing to monitor the progress of an instance.

#### CC.2.8.1 Operation

##### CC.2.8.1.1 E/R Model

In response to a given C-FIND request, the SCP might send several C-FIND responses, (i.e., one C-FIND response per matching worklist item). Each worklist item describes a single task and its related information.

The Unified Procedure Step Query Information Model is represented by the Entity Relationship diagram shown in Figure CC.2.8-1.

Figure CC.2.8-1. Unified Procedure Step E-R Diagram

There is only one Information Entity in the model, which is the Unified Procedure Step. The Attributes of a Unified Procedure Step can be found in Table CC.2.5-3.

##### CC.2.8.1.2 C-FIND Service Parameters

###### CC.2.8.1.2.1 SOP Class UID

The Affected SOP Class UID of the C-FIND DIMSE request shall always be the UPS SOP Class negotiated for the Presentation Context under which the service is requested. This will always be either the UPS Pull SOP Class or the UPS Watch SOP Class. See Section CC.3.1 for further details.

For both the UPS Pull SOP Class and the UPS Watch SOP Class, the C-FIND is performed against the Unified Procedure Step Information Model shown in Figure CC.2.8-1.

###### CC.2.8.1.2.2 Priority

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

##### CC.2.8.1.3 Identifier

Both the C-FIND request and response contain an Identifier encoded as a Data Set (see PS3.5).

###### CC.2.8.1.3.1 Request Identifier Structure

An Identifier in a C-FIND request shall contain:

- Key Attributes values to be matched against the values of Attributes specified in the SOP Class identified by the Affected SOP Class UID.

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Request Identifier. It shall not be included otherwise.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if Key Attributes of time are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

### Note

This means that Specific Character Set (0008,0005) is included if the SCU supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCU.

The Key Attributes and values allowable for the query shall be defined in the SOP Class definition corresponding to the Affected SOP Class UID for the corresponding Unified Worklist And Procedure Step Information Model.

###### CC.2.8.1.3.2 Response Identifier Structure

The C-FIND response shall not contain Attributes that were not in the request or specified in this section.

An Identifier in a C-FIND response shall contain:

- Key Attributes with values corresponding to Key Attributes contained in the Identifier of the request (Key Attributes as defined in Table CC.2.5-3.)

- Conditionally, the Attribute Specific Character Set (0008,0005). This Attribute shall be included if expanded or replacement character sets may be used in any of the Attributes in the Response Identifier. It shall not be included otherwise. The C-FIND SCP is not required to return responses in the Specific Character Set requested by the SCU if that character set is not supported by the SCP. The SCP may return responses with a different Specific Character Set.

- Conditionally, the Attribute Timezone Offset From UTC (0008,0201). This Attribute shall be included if any Attributes of time in the Response Identifier are to be interpreted explicitly in the designated local time zone. It shall not be present otherwise, i.e., it shall not be sent with a zero-length value.

### Note

This means that Specific Character Set (0008,0005) is included if the SCP supports expanded or replacement character sets in the context of this service. It will not be included if expanded or replacement character sets are not supported by the SCP.

#### CC.2.8.2 Service Class User Behavior

All C-FIND SCUs shall be capable of generating query requests that meet the requirements of the "Worklist" Search Method (see Section CC.2.8.3.1).

Required Keys and Optional Keys, identified in Table CC.2.5-3, associated with the Query may be contained in the Identifier.

An SCU conveys the following semantics using the C-FIND requests and responses:

- The SCU requests that the SCP perform a match of all keys specified in the Identifier of the request against the information it possesses of the Query specified in the request.

- The SCU shall interpret Pending responses to convey the Attributes of a match of an item.

- The SCU shall interpret a response with a status equal to Success, Failure, or Cancel to convey the end of Pending responses.

- The SCU shall interpret a Failure response to a C-FIND request as an indication that the SCP is unable to process the request.

- The SCU may cancel the C-FIND service by issuing a C-FIND-CANCEL request at any time during the processing of the C-FIND. The SCU shall recognize a status of Cancel to indicate that the C-FIND-CANCEL was successful.

#### CC.2.8.3 Service Class Provider Behavior

All C-FIND SCPs shall be capable of processing queries that meet the requirements of the "Worklist" Search (see Section CC.2.8.3.1). This does not imply that an SCP that supports the UPS Watch SOP Class must also be an SCP of the UPS Pull SOP Class.

The SCP shall support Attribute matching as described in Section C.2.2.2.

An SCP conveys the following semantics using the C-FIND requests and responses:

- The SCP is requested to perform a match of all the keys specified in the Identifier of the request, against the information it possesses. Attribute matching is performed using the key values specified in the Identifier of the C-FIND request as defined in Table CC.2.5-3.

- The SCP generates a C-FIND response for each match using the "Worklist" Search method. All such responses shall contain an Identifier whose Attributes contain values from a single match. All such responses shall contain a status of Pending.

- When all matches have been sent, the SCP generates a C-FIND response that contains a status of Success. A status of Success shall indicate that a response has been sent for each match known to the SCP.

### Note

1. No Identifier is contained in a response with a status of Success. For a complete definition, see PS3.7.

2. When there are no matches, then no responses with a status of Pending are sent, only a single response with a status of Success.

- The SCP shall generate a response with a status of Failure if it is unable to process the request. A Failure response shall contain no Identifier.

- If the SCP receives C-FIND-CANCEL indication before it has completed the processing of the matches it shall interrupt the matching process and return a status of Cancel.

Bi-directional Authentication of machines/users/applications is possible at association time (see PS3.7 and PS3.15). PS3.7 provides a "Refused: Not Authorized" error code. Further requiring or documenting authentication and/or authorization features from the SCU or SCP is beyond the scope of this SOP Class.

##### CC.2.8.3.1 Worklist Search Method

The following steps are used to generate match responses.

- Match the key match Attributes contained in the Identifier of the C-FIND request against the values of the Key Attributes for each worklist entity.

- If there are no matching keys, then there are no matches, return a response with a status equal to Success and with no Identifier.

- Otherwise,

  - For each entity for which the Attributes match all of the specified matching key Attributes, construct an Identifier. This Identifier shall contain all of the values of the Attributes for this entity that correspond to the return keys specified in the C-FIND request.

  - Return a response for each remaining Identifier.

Table CC.2.5-3 defines the Attributes of the Unified Procedure Step Information Model, the requirements for key matching, and the requirements for return keys.

#### CC.2.8.4 Status Codes

Table CC.2.8-2 defines the status code values that might be returned in a C-FIND response. General status code values and fields related to status code values are defined for C-FIND DIMSE Service in PS3.7.

Table CC.2.8-2. C-FIND Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
Error: Data Set Does Not Match SOP Class | A900 | (0000,0901) (0000,0902)
Failed: SOP Class not Supported | 0122 |
Failed: Unable to process | Cxxx | (0000,0901) (0000,0902)
Cancel | Matching terminated due to Cancel request | FE00 | None
Success | Matching is complete - No final Identifier is supplied. | 0000 | None
Pending | Matches are continuing - Current Match is supplied and any Optional Keys were supported in the same manner as Required Keys. | FF00 | Identifier
Matches are continuing - Warning that one or more Optional Keys were not supported for existence for this Identifier. | FF01 | Identifier

### Note

Status Codes are returned in DIMSE response messages (see PS3.7). The code values stated in column "Status Codes" are returned in Status Command Element (0000,0900).

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 V.4-1.

An SCU implementation shall recognize any Failure Status Code within the value range specified in Table V.4-1 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.

## CC.3 UPS SOP Classes

There are four UPS SOP Classes associated with the Unified Procedure Step IOD. Each SOP Class supports different interactions with a UPS Instance (also referred to as a worklist item).

The UPS Push SOP Class allows SCU systems to:

- create (push) a new worklist item (i.e., instance) onto a worklist

- submit a cancellation request for a worklist item

The UPS Pull SOP Class allows SCU systems to:

- query a worklist for matching items

- take responsibility for performing a worklist item

- add/modify progress/status/result details for the worklist item

- finalize a controlled worklist item as Completed or Canceled.

The UPS Watch SOP Class allows SCU systems to:

- query for worklist items of interest

- subscribe/unsubscribe for event notifications of changes to a given worklist item

- subscribe/unsubscribe for event notifications of all worklist items

- get details for a given worklist item

- submit a cancellation request for a given worklist item

The UPS Event SOP Class allows SCU systems to:

- receive event notifications of changes to a worklist item

The DICOM AEs that claim conformance to one or more of these SOP Classes shall support all services listed as "M" in the corresponding Table CC.2-1, Table CC.2-2, Table CC.2-3 and Table CC.2-4.

### CC.3.1 Service Class and SOP Class UIDs

All UPS Instances shall be created with the value of SOP Class UID set to "1.2.840.10008.5.1.4.34.6.1" (i.e., that of the UPS Push SOP Class).

### Note

UPS Instances are all based on the Unified Procedure Step IOD and are all created either internally by the SCP, or in response to an N-CREATE issued as part of the UPS Push SOP Class.

Once created, UPS instances may be operated on by DIMSE services from any of the four UPS SOP Classes defined in the Unified Worklist and Procedure Step Service Class.

During association negotiation, the Abstract Syntax UID shall be the implemented SOP Class as shown in the following list:

- 1.2.840.10008.5.1.4.34.6.1 (UPS Push SOP Class)

- 1.2.840.10008.5.1.4.34.6.2 (UPS Watch SOP Class)

- 1.2.840.10008.5.1.4.34.6.3 (UPS Pull SOP Class)

- 1.2.840.10008.5.1.4.34.6.4 (UPS Event SOP Class)

#### CC.3.1.1 DIMSE Implications for UPS (Informative)

A SOP Instance may be created with one SOP Class UID (UPS Push) and later DIMSE Services may refer to it over an association negotiated for a different SOP Class UID. Further details on this can be found in Chapter 10 in PS3.7 .

For DIMSE-N Services, the Affected SOP Class UID (0000,0002) or Requested SOP Class UID (0000,0003), when present, will be the UID of the UPS Push SOP Class regardless of the negotiated Abstract Syntax UID. The SCU and SCP will not reject DIMSE-N messages on the basis of the Affected/Requested SOP Class UID being that of the UPS Push SOP Class, rather than one of the other three SOP Class UIDs as listed in the Abstract Syntax UID during association negotiation. The SCU and SCP may reject the DIMSE-N messages if the instance is not a UPS Push SOP Class Instance.

For DIMSE-C Services (C-FIND), the Affected SOP Class UID will always match the negotiated Abstract Syntax UID for the Presentation Context under which the request is made. This will be either UPS Watch or UPS Pull. Both of these SOP Classes represent the UPS Information Model described in Section CC.2.8.1.

For example, in a typical "Pull Workflow" message exchange, the C-FIND query from a "performing SCU" would use the UPS Pull SOP Class UID for both the negotiated Abstract Syntax UID and the Affected SOP Class UID (0000,0002), however the SOP Class UID (0008,0016) of the C-FIND responses themselves will be set to the UPS Push SOP Class UID by the SCP. All the subsequent N-ACTION, N-SET, and N-GET messages, would then use the UPS Pull SOP Class UID for the negotiated Abstract Syntax UID, and the UPS Push SOP Class UID for the Affected SOP Class UID (0000,0002).

#### CC.3.1.2 Global Instance Subscription UID

The well-known UID for subscribing/unsubscribing to events for all UPS Instances managed by an SCP shall have the value "1.2.840.10008.5.1.4.34.5".

### CC.3.2 Association Negotiation

Association establishment is the first phase of any instance of communication between peer DICOM AEs. The Association negotiation procedure specified in PS3.7 shall be used to negotiate the supported SOP Classes.

See the Association Negotiation definition for the Basic Worklist Management Service Class (Section K.5).

## CC.4 Conformance Requirements

Implementations providing conformance to any of the UPS SOP Classes (UPS Pull, UPS Push, UPS Watch and UPS Event) shall be conformant as described in the following sections and shall include within their Conformance Statement information as described below.

An implementation may conform to any of the UPS SOP Classes as an SCU or as an SCP. The Conformance Statement shall be in the format defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

### CC.4.1 SCU Conformance

An implementation, which is conformant to any of the UPS SOP Classes as an SCU, shall meet conformance requirements for the operations that it invokes.

#### CC.4.1.1 Operations

The SCU Conformance Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

An implementation, that conforms to any of the UPS Push, UPS Pull or UPS Watch SOP Classes as an SCU, shall specify under which conditions it will request the modification of the value of the Procedure Step State (0074,1000) Attribute to "IN PROGRESS", "COMPLETED", and "CANCELED".

An implementation that conforms to the UPS Pull or UPS Watch SOP Classes as an SCU shall state in its Conformance Statement

- Whether it requests matching on Optional Matching Key Attributes for C-FIND.

- Whether it requests Type 3 Return Key Attributes. If it requests Type 3 Return Key Attributes, then it shall list these Optional Return Key Attributes.

- Whether or not it supports extended negotiation of fuzzy semantic matching of person names for C-FIND.

- How it makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when encoding queries and interpreting responses for C-FIND.

- What access mechanisms the SCP is capable of using for retrieving input data and/or making output data available. (see Table 10-3b “Referenced Instances and Access Macro Attributes” in PS3.3 for details on the different Retrieval Sequences).

### CC.4.2 SCP Conformance

An implementation that is conformant to any of the UPS SOP Classes as an SCP shall meet conformance requirements for the operations that it performs.

#### CC.4.2.1 Operations

The SCP Conformance Statement shall be formatted as defined in Annex A “DICOM Conformance Statement Template (Normative)” in PS3.2.

The SCP Conformance Statement shall provide information on the behavior of the SCP at the following occurrences:

- The creation of a new Instance of the UPS Push SOP Class with the status "SCHEDULED". The result of that process on the scheduling information and on the Attribute Values of the Unified Procedure Step shall be specified. Any automatic UPS Subscription created in response to the Instance creation shall be specified.

- The conditions for the update of the Attribute "Procedure Step State" (0074,1000), i.e., the change to the state "IN PROGRESS" or to "CANCELED" or to "COMPLETED".

- Which Attributes the SCP may update after the state has been set to "IN PROGRESS" or "CANCELED" or "COMPLETED".

- For how long the UPS Instance will persist on the SCP, and how long it will be available for N-GETs once its state has been set to "COMPLETED" or "CANCELED".

- Whether the SCP supports priority for C-FIND. If the SCP supports priority for C-FIND, then the meaning of the different priority levels shall be specified.

- Whether the SCP supports case-insensitive matching for PN VR Attributes for C-FIND. If the SCP supports case-insensitive matching of PN VR Attributes, then the Attributes for which this applies shall be specified.

- Whether the SCP supports extended negotiation of fuzzy semantic matching of person names for C-FIND. If the SCP supports extended negotiation of fuzzy semantic matching of person names, then the mechanism for fuzzy semantic matching shall be specified.

- How the SCP makes use of Specific Character Set (0008,0005) and Timezone Offset From UTC (0008,0201) when interpreting C-FIND queries, performing matching and encoding responses.

- What rules the SCP may use to perform additional filtering during a C-FIND (e.g., limiting returns based on the requesting user and the confidentiality settings of the workitems, or limiting the return to a single item already selected on the SCP) and under what conditions those rules are invoked.

- Whether the SCP might refuse Subscription requests and/or Deletion Locks and for what reasons.

- What access mechanisms the SCP is capable of using for retrieving input data and/or making output data available. (see Table 10-3b “Referenced Instances and Access Macro Attributes” in PS3.3 for details on the different Retrieval Sequences).

# DD RT Machine Verification Service Classes (Normative)

## DD.1 Scope

The RT Machine Verification Service Classes define an application-level class-of-service that facilitates the independent verification of geometric and dosimetric settings on a radiation delivery system prior to delivery of a radiation treatment. The service classes are intended for use with both conventional (e.g., photon, electron) as well as particle therapy (e.g., proton, ion) treatments.

## DD.2 RT Machine Verification Model

### DD.2.1 RT Machine Verification Data Flow

In the RT Machine Verification Model, the Service Class User (SCU) of the applicable Machine Verification Service Class is the radiation delivery system used to administer the treatment. The Machine Parameter Verifier (MPV) acts in the role of Service Class Provider (SCP).

The communication states between the SCU and SCP can be described in two levels shown in Figure DD.2-1: A) the Plan Level and B) the Beam Level.

The first level (A in the diagram) is the Plan Level. The SCU initializes external verification of a new plan using the N-CREATE command. The MPV then retrieves the data necessary to perform verification through DICOM or other means. In general, there is a close relationship between an MPV and a Treatment Management System (TMS) or Archive. If DICOM is the protocol used to retrieve this data, this might be done using one or more C-MOVEs on the Archive.

The second level (B in the diagram) is the Beam Level. The SCU uses the N-SET command request to instruct the SCP on the specified Attributes to be verified. The SCU then requests that the verification start using an N-ACTION command. The SCP compares the values of the specified Attributes against the values of the Attributes from the referenced plan, and signals the status of the verification using N-EVENT-REPORT command with the Treatment Verification Status (3008,002C) Attribute indicating the verification result. The MPV's use of tolerance values in the verification process shall be described in a Conformance Statement. The SCU may then optionally request the beam's verification parameters using an N-GET.

Finally, when all beams have been delivered or abandoned, the SCU terminates the verification session at the Plan Level using an N-DELETE.

Figure DD.2-1. RT Verification Data Flow

## DD.3 Machine Verification SOP Class Definitions

### DD.3.1 IOD Description

The Machine Verification IODs are abstractions of the information needed to verify the correct setup of a treatment delivery system prior to radiation treatment.

### DD.3.2 DIMSE Service Group

Table DD.3.2-1 shows DIMSE Services applicable to the IODs.

Table DD.3.2-1. DIMSE Service Group

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-CREATE | M/M
N-SET | M/M
N-GET | M/M
N-ACTION | M/M
N-DELETE | M/M
N-EVENT-REPORT | M/M

The meaning of the Usage SCU/SCP is described in Section H.2.4.

This Section describes the behavior of the DIMSE Services that are specific for this IOD. The general behavior of the DIMSE services is specified in PS3.7.

#### DD.3.2.1 N-CREATE and N-SET

The N-CREATE is used to create an instance of the applicable Machine Verification SOP Class.

The N-SET is used to communicate parameters for verification to an MPV by setting Attributes on an instance of the applicable Machine Verification SOP Class.

All Attributes in the table relating to the number of a certain item (e.g., Number of Wedges, Number of Control Points) specify the number in the N-SET command. The numbering in the Beams Verification Request is not necessarily the same as the numbering in the referenced RT Plan.

##### DD.3.2.1.1 Attributes

The Attribute list of the N-CREATE and N-SET for the RT Conventional Machine Verification SOP Class is shown in Table DD.3.2.1-1. See Section 5.4 for usage notation.

Table DD.3.2.1-1. N-CREATE and N-SET Attribute List - RT Conventional Machine Verification SOP Class

Attribute Name | Tag | N-CREATE Usage SCU/SCP | N-SET Usage SCU/SCP
--- | --- | --- | ---
RT General Machine Verification Module
Referenced RT Plan Sequence | (300C,0002) | 1/1 (only a single Item shall be permitted) | Not allowed
>Referenced SOP Class UID | (0008,1150) | 1/1 | Not allowed
>Referenced SOP Instance UID | (0008,1155) | 1/1 | Not allowed
Referenced Fraction Group Number | (300C,0022) | 1C/1 (required if plan has more than one fraction group) | Not allowed
Patient ID | (0010,0020) | 1/1 | Not allowed
Include Table CC.2.5-2e “Issuer of Patient ID Macro”
Treatment Verification Status | (3008,002C) | Not allowed | Not allowed
Failed Parameters Sequence | (0074,1048) | Not allowed | Not allowed
Overridden Parameters Sequence | (0074,104A) | Not allowed | Not allowed
General Machine Verification Sequence | (0074,1042) | 2/2 (sequence shall contain zero items) | 1/1 (only a single Item shall be permitted)
>Specified Primary Meterset | (3008,0032) | -/- | 3/3
>Specified Secondary Meterset | (3008,0033) | -/- | 3/3
>Specified Treatment Time | (3008,003A) | -/- | 3/3
>Beam Limiting Device Leaf Pairs Sequence | (3008,00A0) | -/- | 3/3
>>RT Beam Limiting Device Type | (300A,00B8) | -/- | 1/1
>>Number of Leaf/Jaw Pairs | (300A,00BC) | -/- | 1/1
>Recorded Wedge Sequence | (3008,00B0) | -/- | 2C/2C (required if MPV is capable of verifying wedges). See Section DD.3.2.1.1.1.
>>Wedge Number | (300A,00D2) | -/- | 1/1
>>Wedge ID | (300A,00D4) | -/- | 3/3
>>Wedge Angle | (300A,00D5) | -/- | 3/3
>>Wedge Orientation | (300A,00D8) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>Recorded Compensator Sequence | (3008,00C0) | -/- | 2C/2C (required if MPV is capable of verifying compensators). See Section DD.3.2.1.1.1.
>>Compensator ID | (300A,00E5) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Referenced Compensator Number | (300C,00D0) | -/- | 1/1
>Recorded Block Sequence | (3008,00D0) | -/- | 2C/2C (required if MPV is capable of verifying blocks). See Section DD.3.2.1.1.1.
>>Block Tray ID | (300A,00F5) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Referenced Block Number | (300C,00E0) | -/- | 1/1
>Treatment Machine Name | (300A,00B2) | -/- | 1/1
>Beam Name | (300A,00C2) | -/- | 3/3
>Radiation Type | (300A,00C6) | -/- | 1/1
>Number of Wedges | (300A,00D0) | -/- | 1/1
>Number of Compensators | (300A,00E0) | -/- | 1/1
>Number of Boli | (300A,00ED) | -/- | 1/1
>Number of Blocks | (300A,00F0) | -/- | 1/1
>Applicator Sequence | (300A,0107) | -/- | 2C/2C (required if MPV is capable of verifying applicators). See Section DD.3.2.1.1.1.
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Applicator ID | (300A,0108) | -/- | 3/3
>>Applicator Type | (300A,0109) | -/- | 1/1
>Number of Control Points | (300A,0110) | -/- | 1/1 (value shall be 1)
>Patient Setup Sequence | (300A,0180) | -/- | 3/3 (one or more Items may be included)
>>Patient Setup Number | (300A,0182) | -/- | 1/1
>>Fixation Device Sequence | (300A,0190) | -/- | 2C/2C (required if MPV is capable of verifying fixation devices). See Section DD.3.2.1.1.1.
>>>Accessory Code | (300A,00F9) | -/- | 3/3
>>>Fixation Device Type | (300A,0192) | -/- | 1/1
>Referenced Beam Number | (300C,0006) | -/- | 1/1
>Referenced Bolus Sequence | (300C,00B0) | -/- | 2C/2C (required if MPV is capable of verifying bolus). See Section DD.3.2.1.1.1.
>>Referenced ROI Number | (3006,0084) | -/- | 1/1
>>Accessory Code | (300A,00F9) | -/- | 3/3
All other Attributes of the RT General Machine Verification Module | - | -/- | 3/3
RT Conventional Machine Verification Module
Conventional Machine Verification Sequence | (0074,1044) | 2/2 (sequence shall contain zero items) | 1/1 (only a single Item shall be permitted)
>Conventional Control Point Verification Sequence | (0074,104C) | -/- | 1/1 (only a single Item shall be permitted)
>>Nominal Beam Energy | (300A,0114) | -/- | 3/3
>>Dose Rate Set | (300A,0115) | -/- | 3/3
>>Wedge Position Sequence | (300A,0116) | -/- | 1C/1C (required if Number of Wedges (300A,00D0) is non-zero,one or more Items may be included)
>>>Wedge Position | (300A,0118) | -/- | 1/1
>>>Referenced Wedge Number | (300C,00C0) | -/- | 1/1
>>Beam Limiting Device Position Sequence | (300A,011A) | -/- | 1C/1C (required if Beam Limiting Device Leaf Pairs Sequence (3008,00A0) is sent,one or more Items may be included)
>>>RT Beam Limiting Device Type | (300A,00B8) | -/- | 1/1
>>>Leaf/Jaw Positions | (300A,011C) | -/- | 1/1
>>Gantry Angle | (300A,011E) | -/- | 3/3
>>Gantry Rotation Direction | (300A,011F) | -/- | 2/2
>>Beam Limiting Device Angle | (300A,0120) | -/- | 3/3
>>Beam Limiting Device Rotation Direction | (300A,0121) | -/- | 3/3
>>Patient Support Angle | (300A,0122) | -/- | 3/3
>>Patient Support Rotation Direction | (300A,0123) | -/- | 3/3
>>Table Top Eccentric Axis Distance | (300A,0124) | -/- | 3/3
>>Table Top Eccentric Angle | (300A,0125) | -/- | 3/3
>>Table Top Eccentric Rotation Direction | (300A,0126) | -/- | 3/3
>>Table Top Vertical Position | (300A,0128) | -/- | 3/3
>>Table Top Longitudinal Position | (300A,0129) | -/- | 3/3
>>Table Top Lateral Position | (300A,012A) | -/- | 3/3
>>Table Top Pitch Angle | (300A,0140) | -/- | 3/3
>>Table Top Pitch Rotation Direction | (300A,0142) | -/- | 3/3
>>Table Top Roll Angle | (300A,0144) | -/- | 3/3
>>Table Top Roll Rotation Direction | (300A,0146) | -/- | 3/3
>>Referenced Control Point Index | (300C,00F0) | -/- | 1/1
All other Attributes of the RT Conventional Machine Verification Module | - | -/- | 3/3

The Attribute list of the N-CREATE and N-SET for the RT Ion Machine Verification SOP Class is shown in Table DD.3.2.1-2.

Table DD.3.2.1-2. N-CREATE and N-SET Attribute List - RT Ion Machine Verification SOP Class

Attribute Name | Tag | N-CREATE Usage SCU/SCP | N-SET Usage SCU/SCP
--- | --- | --- | ---
RT General Machine Verification Module
Referenced RT Plan Sequence | (300C,0002) | 1/1 (only a single Item shall be permitted) | Not allowed
>Referenced SOP Class UID | (0008,1150) | 1/1 | Not allowed
>Referenced SOP Instance UID | (0008,1155) | 1/1 | Not allowed
Referenced Fraction Group Number | (300C,0022) | 1C/1 (required if plan has more than one fraction group) | Not allowed
Patient ID | (0010,0020) | 1/1 | Not allowed
Include Table CC.2.5-2e “Issuer of Patient ID Macro”
Treatment Verification Status | (3008,002C) | Not allowed | Not allowed
Failed Parameters Sequence | (0074,1048) | Not allowed | Not allowed
Overridden Parameters Sequence | (0074,104A) | Not allowed | Not allowed
General Machine Verification Sequence | (0074,1042) | 2/2 (sequence shall contain zero items) | 1/1 (only a single Item shall be permitted)
>Specified Primary Meterset | (3008,0032) | -/- | 3/3
>Specified Secondary Meterset | (3008,0033) | -/- | 3/3
>Specified Treatment Time | (3008,003A) | -/- | 3/3
>Beam Limiting Device Leaf Pairs Sequence | (3008,00A0) | -/- | 3/3 See Section DD.3.2.1.1.1.
>>RT Beam Limiting Device Type | (300A,00B8) | -/- | 1/1
>>Number of Leaf/Jaw Pairs | (300A,00BC) | -/- | 1/1
>Recorded Wedge Sequence | (3008,00B0) | -/- | 2C/2C (required if MPV is capable of verifying wedges). See Section DD.3.2.1.1.1.
>>Wedge Number | (300A,00D2) | -/- | 1/1
>>Wedge ID | (300A,00D4) | -/- | 3/3
>>Wedge Angle | (300A,00D5) | -/- | 3/3
>>Wedge Orientation | (300A,00D8) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>Recorded Compensator Sequence | (3008,00C0) | -/- | 2C/2C (required if MPV is capable of verifying compensators). See Section DD.3.2.1.1.1.
>>Compensator ID | (300A,00E5) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Referenced Compensator Number | (300C,00D0) | -/- | 1/1
>Recorded Block Sequence | (3008,00D0) | -/- | 2C/2C (required if MPV is capable of verifying blocks). See Section DD.3.2.1.1.1.
>>Block Tray ID | (300A,00F5) | -/- | 3/3
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Referenced Block Number | (300C,00E0) | -/- | 1/1
>Treatment Machine Name | (300A,00B2) | -/- | 1/1
>Beam Name | (300A,00C2) | -/- | 3/3
>Radiation Type | (300A,00C6) | -/- | 1/1
>Number of Wedges | (300A,00D0) | -/- | 1/1
>Number of Compensators | (300A,00E0) | -/- | 1/1
>Number of Boli | (300A,00ED) | -/- | 1/1
>Number of Blocks | (300A,00F0) | -/- | 1/1
>Applicator Sequence | (300A,0107) | -/- | 2C/2C (required if MPV is capable of verifying applicators). See Section DD.3.2.1.1.1.
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Applicator ID | (300A,0108) | -/- | 3/3
>>Applicator Type | (300A,0109) | -/- | 1/1
>Number of Control Points | (300A,0110) | -/- | 1/1 (value shall be 1)
>Patient Setup Sequence | (300A,0180) | -/- | 3/3 See Section DD.3.2.1.1.1.
>>Patient Setup Number | (300A,0182) | -/- | 1/1
>>Fixation Device Sequence | (300A,0190) | -/- | 2C/2C (required if MPV is capable of verifying fixation devices). See Section DD.3.2.1.1.1.
>>>Accessory Code | (300A,00F9) | -/- | 3/3
>>>Fixation Device Type | (300A,0192) | -/- | 1/1
>Referenced Beam Number | (300C,0006) | -/- | 1/1
>Referenced Bolus Sequence | (300C,00B0) | -/- | 2C/2C (required if MPV is capable of verifying bolus). See Section DD.3.2.1.1.1.
>>Referenced ROI Number | (3006,0084) | -/- | 1/1
>>Accessory Code | (300A,00F9) | -/- | 3/3
All other Attributes of the RT General Machine Verification Module | - | -/- | 3/3
RT Ion Machine Verification Module
Ion Machine Verification Sequence | (0074,1046) | 2/2 (sequence shall contain zero items) | 1/1 (only a single Item shall be permitted)
>Ion Control Point Verification Sequence | (0074,104E) | -/- | 1/1 (only a single Item shall be permitted)
>>Meterset Rate Set | (3008,0045) | -/- | 3/3
>>Nominal Beam Energy | (300A,0114) | -/- | 3/3
>>Beam Limiting Device Position Sequence | (300A,011A) | -/- | 1C/1C (required if Beam Limiting Device Leaf Pairs Sequence (3008,00A0) is sent,one or more Items may be included)
>>>RT Beam Limiting Device Type | (300A,00B8) | -/- | 1/1
>>>Leaf/Jaw Positions | (300A,011C) | -/- | 1/1
>>Gantry Angle | (300A,011E) | -/- | 3/3
>>Gantry Rotation Direction | (300A,011F) | -/- | 2/2
>>Beam Limiting Device Angle | (300A,0120) | -/- | 3/3
>>Beam Limiting Device Rotation Direction | (300A,0121) | -/- | 3/3
>>Patient Support Angle | (300A,0122) | -/- | 3/3
>>Patient Support Rotation Direction | (300A,0123) | -/- | 3/3
>>Table Top Vertical Position | (300A,0128) | -/- | 3/3
>>Table Top Longitudinal Position | (300A,0129) | -/- | 3/3
>>Table Top Lateral Position | (300A,012A) | -/- | 3/3
>>Table Top Pitch Angle | (300A,0140) | -/- | 3/3
>>Table Top Pitch Rotation Direction | (300A,0142) | -/- | 3/3
>>Table Top Roll Angle | (300A,0144) | -/- | 3/3
>>Table Top Roll Rotation Direction | (300A,0146) | -/- | 3/3
>>Head Fixation Angle | (300A,0148) | -/- | 3/3
>>Gantry Pitch Angle | (300A,014A) | -/- | 3/3
>>Gantry Pitch Rotation Direction | (300A,014C) | -/- | 3/3
>>Snout Position | (300A,030D) | -/- | 3/3
>>Range Shifter Settings Sequence | (300A,0360) | -/- | 1C/1C (required if Number of Range Shifters (300A,0312) is non-zero,one or more Items may be included)
>>>Range Shifter Setting | (300A,0362) | -/- | 1/1
>>>Referenced Range Shifter Number | (300C,0100) | -/- | 1/1
>>Lateral Spreading Device Settings Sequence | (300A,0370) | -/- | 1C/1C (required if Number of Lateral Spreading Devices (300A,0330) is non-zero,one or more Items may be included)
>>>Lateral Spreading Device Setting | (300A,0372) | -/- | 1/1
>>>Referenced Lateral Spreading Device Number | (300C,0102) | -/- | 1/1
>>Range Modulator Settings Sequence | (300A,0380) | -/- | 1C/1C (required if Number of Range Modulators (300A,0340) is non-zero,one or more Items may be included)
>>>Range Modulator Gating Start Value | (300A,0382) | -/- | 1/1
>>>Range Modulator Gating Stop Value | (300A,0384) | -/- | 1/1
>>>Referenced Range Modulator Number | (300C,0104) | -/- | 1/1
>>Ion Wedge Position Sequence | (300A,03AC) | -/- | 1C/1C (required if Number of Wedges (300A,00D0) is non-zero,one or more Items may be included)
>>>Wedge Thin Edge Position | (300A,00DB) | -/- | 1C/1C (required if Wedge Type (300A,00D3) of the wedge referenced by Referenced Wedge Number (300C,00C0) is PARTIAL_STANDARD or PARTIAL_MOTORIZ)
>>>Wedge Position | (300A,0118) | -/- | 1/1
>>Referenced Control Point Index | (300C,00F0) | -/- | 1/1
>Recorded Snout Sequence | (3008,00F0) | -/- | 1C/1C (required if Snout Sequence is included in the RT Ion Plan referenced within the Referenced RT Plan Sequence (300C,0002); only a single Item is permitted in this sequence)
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Snout ID | (300A,030F) | -/- | 3/3
>Recorded Range Shifter Sequence | (3008,00F2) | -/- | 2C/2C (required if MPV is capable of verifying range shifters). See Section DD.3.2.1.1.1.
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Range Shifter ID | (300A,0318) | -/- | 3/3
>>Referenced Range Shifter Number | (300C,0100) | -/- | 1/1
>Recorded Lateral Spreading Device Sequence | (3008,00F4) | -/- | 2C/2C (required if MPV is capable of verifying lateral spreading devices). See Section DD.3.2.1.1.1.
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Lateral Spreading Device ID | (300A,0336) | -/- | 3/3
>>Referenced Lateral Spreading Device Number | (300C,0102) | -/- | 1/1
>Recorded Range Modulator Sequence | (3008,00F6) | -/- | 2C/2C (required if MPV is capable of verifying range modulators). See Section DD.3.2.1.1.1.
>>Accessory Code | (300A,00F9) | -/- | 3/3
>>Range Modulator ID | (300A,0346) | -/- | 3/3
>>Range Modulator Type | (300A,0348) | -/- | 1/1
>>Beam Current Modulation ID | (300A,034C) | -/- | 1C/1C (required if Range Modulator Type (300A,0348) is WHL_MODWEIGHTS)
>>Referenced Range Modulator Number | (300C,0104) | -/- | 1/1
>Radiation Mass Number | (300A,0302) | -/- | 1C/1C (required if Radiation Type (300A,00C6) is ION)
>Radiation Atomic Number | (300A,0304) | -/- | 1C/1C (required if Radiation Type (300A,00C6) is ION)
>Radiation Charge State | (300A,0306) | -/- | 1C/1C (required if Radiation Type (300A,00C6) is ION)
>Scan Mode | (300A,0308) | -/- | 1/1
>Number of Range Shifters | (300A,0312) | -/- | 1/1
>Number of Lateral Spreading Devices | (300A,0330) | -/- | 1/1
>Number of Range Modulators | (300A,0340) | -/- | 1/1
>Patient Support Type | (300A,0350) | -/- | 3/3
>Patient Support ID | (300A,0352) | -/- | 3/3
>Patient Support Accessory Code | (300A,0354) | -/- | 3/3
>Fixation Light Azimuthal Angle | (300A,0356) | -/- | 3/3
>Fixation Light Polar Angle | (300A,0358) | -/- | 3/3
All other Attributes of the RT Ion Machine Verification Module | - | -/- | 3/3

###### DD.3.2.1.1.1 Beam Modifiers

If the MPV is not capable of performing the type of verification required by the Attribute, then the Attribute shall not be present. If the MPV is capable of performing the type of verification required by the Attribute, then the Attribute will be zero length if there are no such modifiers, and valued with one or more items if there are one or more such modifiers.

##### DD.3.2.1.2 Status

Table DD.3.2.1.2-1 defines the status code values that might be returned in a N-CREATE response. General status code values and fields related to status code values are defined for N-CREATE DIMSE Service in PS3.7.

Table DD.3.2.1.2-1. RT Ion Machine Verification SOP Class N-CREATE Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Machine Verification successfully created | 0000
Failure | Failed: No such object instance - Referenced RT Plan not found | C227
Failed: The Referenced Fraction Group Number does not exist in the referenced plan | C221
Failed: No beams exist within the referenced fraction group | C222
Failed: SCU already verifying and cannot currently process this request. | C223

The status values for N-SET that are specific for these SOP Classes are defined as follows:

Table DD.3.2.1.2-2. RT Ion Machine Verification SOP Class N-SET Status Values

Status | Meaning | Code
--- | --- | ---
Success | Machine Verification successfully updated | 0000
Failure | Referenced Beam Number not found within the referenced Fraction Group | C224
Referenced device or accessory not supported | C225
Referenced device or accessory not found within the referenced beam | C226

##### DD.3.2.1.3 Behavior

###### DD.3.2.1.3.1 N-CREATE

The SCU uses N-CREATE to request the SCP to create an applicable Machine Verification SOP Instance. The SCP shall create the SOP Instance and shall initialize Attributes of the SOP Class.

The General Machine Verification Sequence, Conventional Machine Verification Sequence, and Ion Machine Verification Sequence are created with an empty value, and specification of the contained Attributes is deferred until the N-SET operation.

The SCP shall return the status code of the requested SOP Instance creation. The meaning of success, warning and failure status codes is defined in Section DD.3.2.1.2.

###### DD.3.2.1.3.2 N-SET

The SCU uses the N-SET to request the SCP to update an applicable Machine Verification instance. The SCU shall specify the SOP Instance to be updated and shall specify the list of Attributes for which the Attribute Values are to be set. The Attributes in the Conventional/Ion Control Point Verification Sequence represent the Treatment Delivery System's actual geometric values at the time the N-SET request is issued and therefore, the Conventional/Ion Control Point Verification Sequence shall always contain one sequence item. The Referenced Control Point Index shall be zero for NORMAL treatments, and may be greater than zero for CONTINUATION treatments.

Within an Attribute sequence such as the General Machine Verification Sequence, Conventional Machine Verification Sequence, and Ion Machine Verification Sequence, values for all required Attributes must be supplied with each N-SET, or else the missing Attributes will have any previously set values removed from the SOP Instance. Existing parameters may be cleared by sending an empty sequence or Attribute. The MPV's Conformance Statement shall specify the set of Attributes that it requires for verification.

The SCU shall set the new values for the specified Attributes of the specified SOP Instance. The SCP shall then compare the values of Attributes of the specified SOP Instance to the values of the same Attributes found in the RT Plan referenced in N-CREATE. Values shall be compared using the tolerance values also found in the referenced RT Plan. The result of this comparison shall be available for use when the SCU requests the Treatment Verification Status using an N-GET.

#### DD.3.2.2 N-GET

The N-GET is used to get the verification status and results of the applicable Machine Verification SOP Class.

##### DD.3.2.2.1Verification Parameters Selector Attribute Macro

Table DD.3.2.2.1-1 describes N-GET support requirements for the Selector Attribute Macro. See Section 5.4 for requirements type code meaning.

Table DD.3.2.2.1-1. Verification Parameters Selector Attribute Macro

Attribute Name | Tag | Req. Type N-GET (SCU/SCP)
--- | --- | ---
Selector Attribute | (0072,0026) | -/1
Selector Value Number | (0072,0028) | -/1
Selector Sequence Pointer | (0072,0052) | -/1
Selector Sequence Pointer Private Creator | (0072,0054) | -/1
Selector Sequence Pointer Items | (0074,1057) | -/1
Selector Attribute Private Creator | (0072,0056) | -/1

##### DD.3.2.2.2 Attributes

The Attribute list of the N-GET for the RT Conventional Machine Verification SOP Class and RT Ion Machine Verification SOP Class is shown in Table DD.3.2.2.2-1. See Section 5.4 for usage notation.

Table DD.3.2.2.2-1. N-GET Attribute List- RT Conventional Machine Verification SOP Class and RT Ion Machine Verification SOP Class

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Referenced RT Plan Sequence | (300C,0002) | -/1
>Referenced SOP Class UID | (0008,1150) | -/1
>Referenced SOP Instance UID | (0008,1155) | -/1
Referenced Fraction Group Number | (300C,0022) | -/1
Patient ID | (0010,0020) | -/1
Include Table CC.2.5-2e “Issuer of Patient ID Macro”
Treatment Verification Status | (3008,002C) | -/1
Failed Parameters Sequence | (0074,1048) | -/2 (zero or more items shall be included in this Sequence)
>Include Table DD.3.2.2.1-1 “Verification Parameters Selector Attribute Macro”
Overridden Parameters Sequence | (0074,104A) | -/2 (zero or more items shall be included in this Sequence)
>Include Table DD.3.2.2.1-1 “Verification Parameters Selector Attribute Macro”
>Operators' Name | (0008,1070) | -/2
>Override Reason | (3008,0066) | -/2
All other Attributes | - | 3/2

##### DD.3.2.2.3 Status

Table DD.3.2.2.3-1 defines the status code values that might be returned in a N-GET response. General status code values and fields related to status code values are defined for N-GET DIMSE Service in PS3.7.

Table DD.3.2.2.3-1. RT Conventional Machine and RT Ion Machine Verification SOP Class N-GET Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Treatment Verification Status of the applicable Machine Verification instance successfully returned. | 0000
Failure | Failed: Applicable Machine Verification instance not found | C112

##### DD.3.2.2.4 Behavior

The SCU uses N-GET to retrieve from the SCP the verification status and results of the applicable Machine Verification SOP Instance.

The SCP shall return the Treatment Verification Status (3008,002C) Attribute as well as the status code of the requested SOP Instance update. Treatment Verification Status shall have one of the following values:

VERIFIED = treatment verified

VERIFIED_OVR = treatment verified with at least one out-of-range value overridden

NOT_VERIFIED = verification of treatment was not successful

The VERIFIED state indicates that all required parameters have been checked and no out-of-range values have been detected. The VERIFIED_OVR state indicates that the treatment failed to verify due to one or more out-of-range values that were then overridden. NOT_VERIFIED indicates that one of more of the out-of-range values has not yet been overridden and the treatment cannot go ahead. This could be because at least one out-of-range value was detected, or one or more values required for verification were not supplied. The site- and vendor-specific configuration of the MPV determines the Attributes and ranges required for successful verification.

If the Treatment Verification Status is VERIFIED_OVR, one or more parameter occurrences shall be returned in Overridden Parameters Sequence (0074,104A), otherwise the sequence shall be empty.

If the Treatment Verification Status is NOT_VERIFIED, one or more parameter occurrences shall be returned in Failed Parameters Sequence (0074,1048), otherwise the sequence shall be empty.

See Section C.31.1.1 “Failed Parameters and Overridden Parameters” in PS3.3 for specification of how the Attribute tags and position within a sequence are encoded.

The SCP shall return the status code of the requested action. The meanings of success, warning and failure status codes are defined in Section DD.3.2.2.3.

#### DD.3.2.3 N-ACTION

The N-ACTION is used to initiate parameter verification of an instance of the applicable Machine Verification SOP Class.

##### DD.3.2.3.1 Attributes

The action types of the N-ACTION are defined as shown in Table DD.3.2.3-1.

Table DD.3.2.3-1. Action Event Information

Action Type Name | Action Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Request Beam Verification | 1 | None | - | -

##### DD.3.2.3.2 Status

Table DD.3.2.3-2 defines the status code values that might be returned in a N-ACTION response. General status code values and fields related to status code values are defined for N-ACTION DIMSE Service in PS3.7.

Table DD.3.2.3-2. RT Conventional Machine and RT Ion Machine Verification SOP Class N-ACTION Status Values

Service Status | Further Meaning | Status Code
--- | --- | ---
Success | Machine Parameter Verification of the applicable Machine Verification instance successfully initiated. | 0000
Failure | Failed; Machine Verification requested instance not found. | C112

##### DD.3.2.3.3 Behavior

The SCU uses N-ACTION to instruct the SCP to initiate machine parameter verification of the applicable Machine Verification SOP Instance.

#### DD.3.2.4 N-DELETE

The N-DELETE is used to delete an instance of the applicable Machine Verification SOP Class.

##### DD.3.2.4.1 Attributes

There are no specific Attributes.

##### DD.3.2.4.2 Status

There are no specific status codes. See PS3.7 for response status codes.

##### DD.3.2.4.3 Behavior

The SCU uses the N-DELETE to request the SCP to delete an applicable Machine Verification SOP Instance. The SCU shall specify in the N-DELETE request primitive the SOP Instance UID of the applicable Machine Verification instance.

The SCP shall delete the specified SOP Instance, such that subsequent operations of the same SOP Instance will fail.

The SCP shall return the status code of the requested SOP Instance deletion. The meanings of success, warning, and failure status classes are defined in Annex C “Status Type Encoding (Normative)” in PS3.7.

If an N-DELETE is not issued, the SOP Class instance may be deleted on the SCP by a manual or automatic operation. This behavior is beyond the scope of the standard.

#### DD.3.2.5 N-EVENT-REPORT

The N-EVENT-REPORT is used by the MPV to notify the TDS of the status of the verification task (successful or otherwise), or to notify the TDS that a verification is pending (in progress). The encoding of Notification Event Information is defined in PS3.7.

##### DD.3.2.5.1 Attributes

The arguments of the N-EVENT-REPORT are defined as shown in Table DD.3.2.5-1.

Table DD.3.2.5-1. Notification Event Information

Event Type Name | Event Type ID | Attribute Name | Tag | Usage SCU/SCP
--- | --- | --- | --- | ---
Pending | 1 | None | - | -
Done | 2 | Treatment Verification Status | (3008,002C) | -/1

##### DD.3.2.5.2 Status

There are no specific status codes. See PS3.7 for response status codes.

##### DD.3.2.5.3 Behavior

The SCP uses the N-EVENT-REPORT to inform the SCU of the verification status. See Section BBB.3 “Use Cases” in PS3.17 .

If the Event Type ID = 1 then the verification is still in progress, and the SCU must wait until another event is received. See Section BBB.3.2.2 “Transactions and Message Flow” in PS3.17 .

If the Event Type ID = 2 then the verification process has been completed. The SCU may use the returned value of the Treatment Verification Status (3008,002C) to determine whether or not the beam is ready to be delivered, or if a machine adjustment or override needs to be made. See Section BBB.3.2.2 “Transactions and Message Flow” in PS3.17 .

# EE Display System Management Service Class (Normative)

## EE.1 Scope

The Display System Service Class allows service users retrieve parameters related to the Display Subsystem(s).

Figure EE.1-1. Display System Management Data Flow

## EE.2 Display System SOP Class

### EE.2.1 IOD Description

The Display System IOD is an abstraction of the soft-copy display system and is the basic Information Entity to monitor the status of a Display System. The Display System SOP Instance is created by the SCP during start-up of the Display System and has a well-known SOP Instance UID.

### EE.2.2 DIMSE Service Group

The DIMSE Service shown in Table EE.2.2-1 is applicable to the Display System IOD under the Display System SOP Class.

Table EE.2.2-1. DIMSE Service Group - Display System

DIMSE Service Element | Usage SCU/SCP
--- | ---
N-GET | M/M

This section describes the behavior of the DIMSE services that are specific for this IOD. The general behavior of the DIMSE services is specified in PS3.7.

#### EE.2.2.1 N-GET

N-GET is used to retrieve information from an instance of the Display System SOP class.

##### EE.2.2.1.1 Attributes

###### EE.2.2.1.1.1 Display Subsystem Macros

To reduce the size and complexity of EE.2.2.1-2, a macro notation is used.

Table EE.2.2.1-1. Table Result Context Macro

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Performed Procedure Step Start DateTime | (0040,4050) | -/1
Performed Procedure Step End DateTime | (0040,4051) | -/1
Actual Human Performer Sequence | (0040,4035) | 3/2
>Human Performer Code Sequence | (0040,4009) | -/1C (Required if Human Performer's Name (0040,4037) is not present.)
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Human Performer's Name | (0040,4037) | -/1C (Required if Human Performer Code Sequence (0040,4009) is not present.)
>Human Performer's Organization | (0040,4036) | -/2
Measurement Equipment Sequence | (0028,7012) | 3/2
>Measurement Functions | (0028,7013) | -/1
>Measured Characteristics | (0028,7026) | -/1
>Measurement Equipment Type | (0028,7014) | -/1
>Manufacturer | (0008,0070) | -/1
>Manufacturer's Model Name | (0008,1090) | -/1
>Device Serial Number | (0018,1000) | -/2
>DateTime of Last Calibration | (0018,1202) | -/2

###### EE.2.2.1.1.2 Display System N-GET Attribute Requirements

The attributes that may be retrieved are shown in Table EE.2.2.1-2.

Table EE.2.2.1-2. Display System N-GET Attributes

Attribute Name | Tag | Usage SCU/SCP
--- | --- | ---
Specific Character Set | (0008,0005) | -/1C (Required if an extended or replacement character set is used)
Display System Module
Manufacturer | (0008,0070) | 3/1
Institution Name | (0008,0080) | 3/1
Institution Address | (0008,0081) | 3/1
Device Serial Number | (0018,1000) | 3/1
Station Name | (0008,1010) | 3/2
Institutional Department Name | (0008,1040) | 3/2
Manufacturer's Model Name | (0008,1090) | 3/1
Equipment Administrator Sequence | (0028,7000) | 3/2
>Person Name | (0040,A123) | -/2
>Person Identification Code Sequence | (0040,1101) | -/1
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Person's Address | (0040,1102) | -/3
>Person's Telephone Numbers | (0040,1103) | -/3
>Institution Name | (0008,0080) | -/1C (Required if Institution Code Sequence (0008,0082) is not present. May be present otherwise.)
>Institution Address | (0008,0081) | -/3
>Institution Code Sequence | (0008,0082) | -/1C (Required if Institution Name (0008,0080) is not present.May be present otherwise.)
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
Number of Display Subsystems | (0028,7001) | 3/1
Display Subsystem Sequence | (0028,7023) | 3/1
>Display Subsystem ID | (0028,7003) | -/1
>Display Subsystem Name | (0028,7004) | -/2
>Display Subsystem Description | (0028,7005) | -/2
>Display Device Type Code Sequence | (0028,7022) | -/2
>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>Manufacturer | (0008,0070) | -/2
>Device Serial Number | (0018,1000) | -/2
>Manufacturer's Model Name | (0008,1090) | -/2
>System Status | (0028,7006) | -/1
>System Status Comment | (0028,7007) | -/2
>Display Subsystem Configuration Sequence | (0028,700A) | -/2
>>Configuration ID | (0028,700B) | -/1
>>Configuration Name | (0028,700C) | -/2
>>Configuration Description | (0028,700D) | -/2
>>Referenced Target Luminance Characteristics ID | (0028,700E) | -/2
>Current Configuration ID | (0028,7002) | -/2
>Measurement Equipment Sequence | (0028,7012) | -/2
>>Measurement Functions | (0028,7013) | -/1
>>Measured Characteristics | (0028,7026) | -/1
>>Measurement Equipment Type | (0028,7014) | -/1
>>Manufacturer | (0008,0070) | -/1
>>Manufacturer's Model Name | (0008,1090) | -/1
>>Device Serial Number | (0018,1000) | -/1
>>DateTime of Last Calibration | (0018,1202) | -/2
Target Luminance Characteristics Module
Target Luminance Characteristics Sequence | (0028,7008) | 2/1
>Luminance Characteristics ID | (0028,7009) | -/1
>Display Function Type | (0028,7019) | -/1
>Target Minimum Luminance | (0028,701D) | -/1
>Target Maximum Luminance | (0028,701E) | -/1
>Gamma Value | (0028,701A) | -/1C (Required if the value of Display Function Type (0028,7019) is GAMMA)
>Number of Luminance Points | (0028,701B) | -/1C (Required if the value of Display Function Type (0028,7019) is USER_DEFINED)
>Luminance Response Sequence | (0028,701C) | -/1C (Required if the value of Display Function Type (0028,7019) is USER_DEFINED)
>>DDL Value | (0028,7017) | -/1
>>Luminance Value | (0028,701F) | -/1
>Luminance Response Description | (0028,7020) | -/1C (Required if the value of Display Function Type (0028,7019) is USER_DEFINED. May be present otherwise.)
>CIExy White Point | (0028,7018) | -/3
>Reflected Ambient Light | (2010,0160) | -/3
>Ambient Light Value Source | (0028,7025) | -/1C (Required if Reflected Ambient Light (2010,0160) is present.)
QA Results Module
QA Results Sequence | (0028,700F) | 3/1
>Display Subsystem ID | (0028,7003) | -/1
>Display Subsystem QA Results Sequence | (0028,7010) | -/2
>>Configuration ID | (0028,700B) | -/1
>> Configuration QA Results Sequence | (0028,7011) | -/2
>>>Display Calibration Result Sequence | (0028,7016) | -/2
>>>>Include Table EE.2.2.1-1 “Table Result Context Macro”
>>>>Luminance Characteristics ID | (0028,7009) | -/1
>>>Visual Evaluation Result Sequence | (0028,7015) | -/2
>>>>Include Table EE.2.2.1-1 “Table Result Context Macro”
>>>>Visual Evaluation Test Sequence | (0028,7028) | -/1
>>>>>Test Result | (0028,7029) | -/1
>>>>>Test Result Comment | (0028,702A) | -/3
>>>>>Test Pattern Code Sequence | (0028,702C) | -/3
>>>>>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>>>>>Referenced Image Sequence | (0008,1140) | -/1C (Required if Test Pattern Code Sequence (0028,702C) is absent in this item.May be present otherwise.)
>>>>>>Referenced SOP Class UID | (0008,1150) | -/1
>>>>>>Referenced SOP Instance UID | (0008,1151) | -/1
>>>>>>Referenced Frame Number | (0008,1160) | -/1C (Required if the Referenced SOP Instance is a multi-frame image and the reference does not apply to all frames, and Referenced Segment Number (0062,000B) is not present.)
>>>>>>Referenced Segment Number | (0062,000B) | -/1C (Required if the Referenced SOP Instance is a Segmentation or Surface Segmentation and the reference does not apply to all segments and Referenced Frame Number (0008,1160) is not present.)
>>>>>>Test Image Validation | (0028,702B) | -/3
>>>>Visual Evaluation Method Code Sequence | (0028,702E) | -/1
>>>>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>>>Luminance Uniformity Result Sequence | (0028,7027) | -/2
>>>>Include Table EE.2.2.1-1 “Table Result Context Macro”
>>>>Number of Luminance Points | (0028,701B) | -/1
>>>>Measurement Pattern Code Sequence | (0028,702D) | -/1
>>>>>Include Table CC.2.5-2a “UPS Code Sequence Macro”
>>>>DDL Value | (0028,7017) | -/1
>>>>White Point Flag | (0028,7021) | -/1
>>>>Luminance Response Sequence | (0028,701C) | -/1
>>>>>Luminance Value | (0028,701F) | -/1
>>>>>CIExy White Point | (0028,7018) | -/1C (Required if the value of White Point Flag (0028,7021) is YES.)
>>>>Reflected Ambient Light | (2010,0160) | -/3
>>>>>Ambient Light Value Source | (0028,7025) | -/1C (Required if Reflected Ambient Light (2010,0160) is present.)
>>>Luminance Result Sequence | (0028,7024) | -/2
>>>>Include Table EE.2.2.1-1 “Table Result Context Macro”
>>>>Number of Luminance Points | (0028,701B) | -/1
>>>>Luminance Response Sequence | (0028,701C) | -/1
>>>>>DDL Value | (0028,7017) | -/1
>>>>>Luminance Value | (0028,701F) | -/1
>>>>>CIExy White Point | (0028,7018) | -/3
>>>>Reflected Ambient Light | (2010,0160) | -/3
>>>>Ambient Light Value Source | (0028,7025) | -/1C (Required if Reflected Ambient Light (2010,0160) is present.)

##### EE.2.2.1.2 SCU Behavior

The SCU uses the N-GET to request the SCP to provide the contents of a Display System SOP Instance. The SCU shall specify in the N-GET request primitive the UID of the SOP Instance from which attributes are to be returned.

The SCU shall specify the list of Display System Attributes for which values are to be returned. The SCU shall not specify Attributes which are defined within a Sequence, but rather specify the sequence itself to be returned in its entirety.

The SCU shall specify in the N-GET request primitive the well-known UID of the SOP Instance.

##### EE.2.2.1.3 SCP Behavior

The SCP shall return the values for the specified Attributes of the Display System SOP Instance.

The SCP shall return the status code for the requested SOP Instance retrieval. The meaning of success, warning, and failure status codes are defined in PS3.7.

### EE.2.3 SOP Class Definitions and UIDs

The SOP Class UID of the Display System SOP class shall have the value of "1.2.840.10008.5.1.1.40".

### EE.2.4 Reserved Identifications

The well-known UID of the Display System SOP Instance shall have the value of "1.2.840.10008.5.1.1.40.1".

## EE.3 Conformance

### EE.3.1 Conformance Statement

The implementation conformance statement of this SOP class shall follow PS3.2.

The SCU Conformance Statement shall specify the following items:

- Maximum number of associations to be supported at the same time

- List of SOP Classes supported

- For each of the supported SOP classes:

  - List of supported SOP class attributes and DIMSE service elements

  - For each supported attribute (mandatory and optional), a valid value range

The SCP Conformance Statement shall specify the following items:

- Maximum number of associations to be supported at the same time

- List of SOP Classes supported

- For each of the supported SOP classes:

  - List of supported SOP class attributes and DIMSE service elements

  - For each supported attribute (mandatory and optional)

    - Valid value range

    - Default value if no value is supplied by the SCU

    - Status code (Failure or Warning) if the SCU supplies a value that is out of range

- For each supported DIMSE service

  - SCP behavior for all specific status codes

# FF Volumetric Presentation State Storage SOP Classes (Normative)

## FF.1 Overview

### FF.1.1 Scope

The Volumetric Presentation State Storage SOP Classes extend the functionality of the Storage Service class (defined in Annex B) to add the ability to convey an intended Volumetric Presentation State or record an existing Volumetric Presentation State. The SOP Classes specify the information and behavior that may be used to present (display) images that are referenced from within the SOP Classes.

They include capabilities for specifying:

- spatial registration on the input datasets

- cropping of the volume datasets by a bounding box, oblique planes and segmentation objects

- the generation geometry of volumetric views

- shading models

- scalar to P-Value or RGB Value conversions

- compositing of multiple MPR renderings

- compositing of multiple volume streams and one volume stream with segmentation

- clinical description of the specified view

- volume and display relative annotations, including graphics, text and overlays plus optional references to structured content providing clinical context for annotations

- membership to a collection of related Volumetric Presentation States intended to be processed or displayed together

- the position within a set of sequentially related Volumetric Presentation States

- animation of the view

- reference to an image depicting the view described by the Volumetric Presentation State

Each Volumetric Presentation State corresponds to a single view (equivalent to an Image Box in a Hanging Protocol or Structured Display). If multiple Volumetric Presentation States are intended to be displayed together (e.g., a set of orthogonal MPR views) these Presentation States can be grouped by assigning them to a Display Collection. However, any detailed information about how a set of views should be presented can only be described by a Structured Display instance or a Hanging Protocol.

The Planar MPR Volumetric Presentation State refers to the multi-planar geometry and grayscale or color image transformations that are to be applied in an explicitly defined manner to convert the stored image pixel data values in a Composite Image Instance to presentation values (P-Values) or Profile Connection Space values (PCS-Values) when an image is displayed on a softcopy device.

The Volume Rendering Volumetric Presentation State specifies a volume rendered view of volume data. Volume Rendering is a data visualization method in which voxels (volume sample points) are assigned a color and an opacity (alpha), and a 2D view is created by accumulating a set of non-transparent samples along a ray through the volume behind each pixel of the view. Ray samples are calculated by interpolating the voxel values in the neighborhood of each sample.

Volume Rendering generally consists of a number of steps, many of which are parametrically specified in the Volume Rendering SOP Classes. The processing steps are:

- Segmentation, or separating the volume data into groups that will share a particular color palette. Segmentation objects are specified as cropping inputs to the Volumetric Presentation State.

- Gradient Computation, or finding edges or boundaries between different types of tissue in the volumetric data. The gradient computation method used is an implementation decision outside the scope of the Volumetric Presentation State.

- Resampling of the volumetric data to create new samples along the imaginary ray behind each pixel in the output two-dimensional view, generally using some interpolation of the values of voxels in the neighborhood of the new sample. The interpolation method used is an implementation decision outside the scope of the Volumetric Presentation State.

- Classification of samples to assign a color and opacity to each sample.

- Shading or the application of a lighting model to samples indicating the effect of ambient, diffuse, and specular light on the sample.

- Compositing or the accumulation of samples on each ray into the final value of the pixel corresponding to that ray. The specific algorithms used are outside the scope of the Volumetric Presentation State.

- Conversion to presentation Profile Connection Space values (PCS-Values) when an image is displayed on a softcopy device.

The result of applying a Volumetric Presentation State is not expected to be exactly reproducible on different systems. It is difficult to describe the display and rendering algorithms in enough detail in an interoperable manner such that a presentation produced at a later time is indistinguishable from that of the original presentation. While Volumetric Presentation States use established DICOM concepts of grayscale and color matching (GSDF and ICC color profiles) and provide a generic description of the different types of display algorithms possible, variations in algorithm implementations within display devices are inevitable and an exact match of volume presentation on multiple devices cannot be guaranteed. Nevertheless, reasonable consistency is provided by specification of inputs, geometric descriptions of spatial views, type of processing to be used, color mapping and blending, input fusion, and many generic rendering parameters, producing what is expected to be a clinically acceptable result.

The P-Values are in a device independent perceptually linear space that is formally defined in PS3.14 Grayscale Standard Display Function. The PCS-Values are in a device independent space that is formally defined in the ICC Profiles as CIEXYZ or CIELab values.

How an SCP of these SOP Classes chooses between multiple Presentation State instances that may apply to an image is beyond the scope of this standard.

A claim of conformance as an SCP of the SOP Class implies that the SCP shall make the Presentation State available to the user of the device, and if selected by the user, shall apply all the transformations stored in the state in the manner in which they are defined in the standard.

How an SCP of these SOP Classes chooses to display multiple states that are part of a Display Collection is beyond the scope of this standard.

### Note

For example, if a user selects a state that is part of a four state Spatial Collection, an SCP may choose to display all four together, to display the single state selected by the user or to display two of the four states deemed appropriate by the SCP.

## FF.2 Volume Transformation Processes

### FF.2.1 Volumetric Transformations

The transformations defined in the Volumetric Presentation State Storage SOP Classes replace those that may be defined in the Referenced Image SOP Instances. If a particular transformation is absent in a Volume Rendering Volumetric Presentation State Storage SOP Instance, then it shall be assumed to be an identity transformation and any equivalent transformation, if present, in the Referenced Image SOP Instances shall not be used.

The presentation-related Attributes of the Volume Rendering Volumetric Presentation State Storage SOP Classes are immutable. They shall never be modified or updated; only a derived SOP Instance with a new SOP Instance UID may be created to represent a different presentation.

#### FF.2.1.1 Planar MPR Volumetric Transformations

The Planar MPR Volumetric Presentation State Storage SOP Classes support a set of transformations to produce derived volumetric views of volume input data.

The Grayscale Planar MPR Volumetric Presentation State Storage SOP Class defines a grayscale volumetric view from a single volume input. The sequence of transformations from volumetric inputs into P-Values is explicitly defined in the reference pipeline described in Figure FF.2-1.

Figure FF.2-1. Grayscale Planar MPR Volumetric Pipeline

The Compositing Planar MPR Volumetric Presentation State Storage SOP Class defines a true color volumetric view from one or more volume inputs. The sequence of transformations from volumetric inputs into PCS-Values is explicitly defined in the reference pipeline described in Figure FF.2-2. The actual sequence implemented may differ (such as classifying and compositing prior to creating the MPR view) but must result in similar appearance.

Figure FF.2-2. Compositing Planar MPR Volumetric Pipeline

The planar MPR transformation requires a volume that is in the Volumetric Presentation State Reference Coordinate System (VPS-RCS).

MPR generation is based on the attributes of the Multi-Planar Reconstruction Geometry Module (see Section C.11.26.1.1 “Planar Style” in PS3.3). If the MPR Thickness Type (0070,1502) is SLAB then the Rendering Method (0070,120D) is also used.

If Pixel Presentation (0008,9205) is MONOCHROME, then Presentation LUT Shape (2050,0020) provides the transform to output P-Values.

If Pixel Presentation (0008,9205) is TRUE_COLOR, then Presentation State Classification Component Sequence (0070,1801) describes the conversion of each processed input into an RGB data stream, and Presentation State Compositor Component Sequence (0070,1805) describes the compositing of these separate RGBA data streams into a single RGB data stream. This single RGB data stream is then processed as described by ICC Profile (0028,2000) to produce output PCS-Values.

#### FF.2.1.2 Volume Rendering Volumetric Transformations

##### FF.2.1.2.1 Volume Rendering Pipelines

The Volume Rendering Volumetric Presentation State Storage SOP Classes support a set of transformations to produce derived volumetric views of volume input data. Attributes comprising the Volume Rendering Volumetric Presentation States are defined in the context of the reference pipelines described in this section. While the reference pipelines imply a certain order of the volume rendering operations of classification, resampling, shading, and compositing, the specific order in which these operations are applied by any device claiming conformance to this standard are implementation-dependent and beyond the scope of this standard. It is the responsibility of the viewing application to transform the standard attributes into parameters appropriate for the particular order of operations implemented in the viewing application.

The Volume Rendering Volumetric Presentation State Storage SOP Class defines a volumetric view from a single volume input to produce a volume rendered view. The sequence of transformations from volumetric inputs into PCS-Values is explicitly defined in the reference pipeline described in Figure FF.2.1.2.1-1.

Figure FF.2.1.2.1-1. Volume Rendering Volumetric Pipeline

The Segmented Volume Rendering Volumetric Presentation State Storage SOP Class defines a volumetric view from a single volume dataset with optional segmentation croppings, each colored separately and blended into the volume to be rendered. The sequence of transformations from volumetric inputs into PCS-Values is explicitly defined in the reference pipeline described in Figure FF.2.1.2.1-2.

There is a single item in the Volume Stream Sequence (0070,1A08) for instances of this SOP Class.

The classified segmented volumes shall be blended in lowest to highest priority order using B-over-A blending of the RGB data and the corresponding opacity (alpha) data. The first item in the Presentation State Classification Component Sequence (0070,1801) is the base upon which subsequent items are cropped and B-over-A blended with it.

Figure FF.2.1.2.1-2. Segmented Volume Rendering Volumetric Pipeline

The Multiple Volume Rendering Volumetric Presentation State Storage SOP Class defines a volumetric view from more than one volume input. The sequence of transformations from volumetric inputs into PCS-Values is explicitly defined in the reference pipeline described in Figure FF.2.1.2.1-3. The specific algorithms for volume rendering may differ, but must result in a similar appearance.

It is expected that all volume inputs are spatially registered to the Volumetric Presentation State - Reference Coordinate System. The specific step in the processing at which resampling is performed to achieve this spatial registration is an implementation decision.

Each item in the Volume Stream Sequence (0070,1A08) produces one input to a RGBA Compositor.

Figure FF.2.1.2.1-3. Multiple Volume Rendering Volumetric Pipeline

Transformation to PCS-Values is performed after Volume Rendering.

##### FF.2.1.2.2 Volume Rendering Component

This component transforms an RGBA volume into a volume rendered view according to the parameters in the Render Geometry Module. This component is implementation dependent, but generally includes processing steps such as gradient computation to find normals of use in the shading operation, resampling of volume data, shading according to the parameters in the Render Shading Module, and compositing of the resampled data to produce the final volume rendered view.

##### FF.2.1.2.3 Graphic Projection Component

This component converts the volumetric annotation specified in the Volumetric Graphic Annotation module into a graphic overlay for the 2D volume rendered view. It is the role of this component to evaluate the volumetric graphic annotations, determine which graphics are visible in the volume rendered view, and provide graphics that are layered on the view.

Inputs to the Graphic Projection component are:

- Volumetric Graphic Annotation Module

- RGBA volume input to the Volume Rendering component

- Volume Render Geometry Module

- Input-specific Cropping Specification Index (0070,1205) values

- Volume Cropping Module Attributes

The Graphic Projection transform algorithm considers whether each volumetric graphic annotation is visible in the current volume rendered view, considering the volume data, Volume Render Geometry, and the value of Annotation Clipping (0070,1907).

If Annotation Clipping (0070,1907) is YES, then the annotation shall be visible only if it is present in the field of view and not obscured by opaque structures that may lie between the annotation and the viewpoint. In the case of the Volumetric Presentation Input Annotation Sequence (0070,1905), annotation text shall be visible only if some part of the specified segmentation is visible.

If Annotation Clipping (0070,1907) is NO, then the annotation shall always be visible. A particular implementation may display annotations that lie behind opaque structures in a different style (such as a softer gray), but the decision to provide such display style is outside the scope of this standard.

The output of the Graphic Projection component is displayed on the 2D presentation view in the graphic layers specified by the corresponding values of Graphic Layer (0070,0002).

### FF.2.2 Volumetric Inputs, Registration and Cropping

A Volumetric Presentation State can take multiple volumes as input. A volume is defined in Section C.11.23.1 “Presentation Input Type Volume Input Requirements” in PS3.3. The same source data can be referenced in more than one input.

The VOI LUT encoded in the Volumetric Presentation State is applied to the input data.

The input volumes may or may not be in the Volumetric Presentation State Reference Coordinate System (VPS-RCS). If they are not, they shall be registered into the VPS-RCS.

Two methods of cropping the input volumes are provided:

- All inputs to the Volumetric Presentation State may be cropped using the common cropping methods specified by Global Crop (0070,120B) and items in the Volume Cropping Sequence (0070,1301).

- In addition, cropping may be specified independently for each input to the Volumetric Presentation State as specified by the value of Crop (0070,1204) and items in the Volume Cropping Sequence (0070,1301).

### Note

Combinations of cropping methods may be specified. For example, all inputs could be cropped using global bounding box cropping in addition to another cropping method applied to one of more individual inputs to the Volumetric Presentation State.

### FF.2.3 Volumetric Presentation State Display

#### FF.2.3.1 Volumetric Presentation State Display Overview

The MPR Volumetric Presentation State Display Module defines the algorithms used to transform the result of the MultiPlanar Reconstruction volumetric processing on the input data into an output of P-Values or PCS-Values for display.

The Render Display Module defines the algorithms used to transform the result of the Volume Rendering processing on the input data into output RGBA values. Presentation State Classification Component Sequence (0070,1801) describes the conversion of each cropped input into an RGBA volumetric data stream. Volume Stream Sequence (0070,1209) describes RGBA volumetric data streams which are overlayed using ordered "B over A" blending into a volumetric data stream. Presentation State Compositor Component Sequence (0070,1805) describes how the “B over A” blended volumetric data streams are to be composited together into a single RGBA volumetric data stream. This single RGBA data stream is an input to the Volume Rendering component.

#### FF.2.3.2 Description of Display Components

##### FF.2.3.2.1 Classification Component Components

There are two classification component types currently defined for conversion from scalar input data to RGBA. The defined components are:

- One Input -> RGBA: This component accepts reconstructed data from one input in the Volumetric Presentation State Input Sequence (0070,1201) and generates an RGB and an Alpha output. This classification component would be specified in an item of the Presentation State Classification Component Sequence (0070,1801):

  Figure FF.2-3. One Input -> RGBA Component

- Two Inputs -> RGBA: This component accepts reconstructed data from two inputs in the Volumetric Presentation State Input Sequence (0070,1201) and generates an RGB and an Alpha output. This component is used in the case where a two-dimensional color mapping needs to be performed. This classification component would be specified in an item of the Presentation State Classification Component Sequence (0070,1801):

  Figure FF.2-4. Two Inputs ->RGBA Component

  ### Note

  An example for the use of this component is to combine Ultrasound Flow Velocity and Ultrasound Flow Variance to produce a color range from red-blue based on flow velocity and adding a yellow-green tinge based on flow variance)

##### FF.2.3.2.2 Compositor Components

There are two compositor component types defined for compositing of two input RGBA (or one RGBA and one RGB) data sources. The defined components are:

- RGB Compositor: This component accepts two RGBA inputs (with one Alpha input optional) and composites the data into a single RGB output. Each item of Presentation State Compositor Component Sequence (0070,1805) specifies one RGB Compositor component:

  Figure FF.2-5. RGB Compositor Component

- RGBA Compositor: This component accepts two RGBA inputs and composites the data into a single RGB output and a single Alpha output.

  Figure FF.2.3.2.2-2. RGBA Compositor Component

#### FF.2.3.3 Internal Structure of Components

##### FF.2.3.3.1 Internal Structure of Classification Components

Component Type (0070,1802) specifies the component defined in each item of Presentation State Classification Component Sequence (0070,1801), which in turn controls by conditions the rest of the content of the item to provide the necessary specification of the component. The internal structure of each component in block diagram form is as follows:

- One Input -> RGBA: Specified by Component Type (0070,1802) = ONE_TO_RGBA:

  Figure FF.2-6. Internal Structure of One Input -> RGBA Component

- Two Inputs -> RGBA: If Component Type (0070,1802) = TWO_TO_RGBA:

  Figure FF.2-7. Internal Structure of Two Input -> RGBA Component

The number of most significant bits extracted from each input is specified by the value of Bits Mapped to Color Lookup Table (0028,1403) in the Component Input Sequence (0070,1803) item for that input.

If Component Type (0070,1802) = TWO_TO_RGBA, there shall be two items in Component Input Sequence (0070,1803) with the first item defining the source of the most significant bits of the Palette Color Lookup Table input and the second item defining the source of the least significant bits of the Palette Color Lookup Table input

##### FF.2.3.3.2 Internal Structure of RGB and RGBA Compositor Components

Weighting transfer functions that compute the weighting factors used by the Compositor Function as a function of Alpha1 and Alpha2 values are specified as weighting look-up tables (LUTs) in the RGB and RGBA Compositor components. The RGB and RGBA Compositor components are identical except for the compositing of the additional Alpha component in the RGBA Compositor:

Figure FF.2-8. Internal Structure of RGB Compositor Component

Figure FF.2.3.3.2-1. Internal Structure of RGB and Opacity Compositor Component

Because each Weighting LUT uses both Alpha values in determining a weighting factor, they allow compositing functions that would not be possible if each weighting factor were based only on that input's Alpha value. See Section XXX.5 “Compositing and the Use of Weighting Transfer Functions” in PS3.17 for typical usage of the Weighting LUTs.

The input bits to the Weighting LUTs are obtained by combining the two Alpha inputs, with half the input bits obtained from each Alpha input:

- In the case of the first compositor component corresponding to the first item in Presentation State Compositor Component Sequence (0070,1805), the Alpha from the classification component corresponding to the first item in the Presentation State Classification Component Sequence (0070,1805) provides the most significant bits of the Weighting LUT inputs, while the Alpha from the classification component corresponding to the second item in the Presentation State Classification Component Sequence (0070,1805) provides the least significant bits of the Weighting LUT inputs.

- In the case of subsequent compositor components, the Alpha from the classification component corresponding to the next item in the Presentation State Classification Component Sequence (0070,1805) provides the least significant bits of the Weighting LUT inputs, while the most significant bits of the Weighting LUT inputs are computed as one minus the Alpha from the classification component corresponding to the next item in the Presentation State Classification Component Sequence (0070,1805).

The integer outputs of the Weighting LUTs are normalized to the range 0.0 to 1.0, and the Compositor Function combines the normalized R, G, B and Alpha (each component called "Color" = Cx) input values as follows:

Cout = (C1*Weight1) + (C2*Weight2)

The sum of the normalized Weight1 and Weight2 shall be no greater than 1.0.

The color input values are normalized because the number of output bits from the RGB Palette Color Lookup Tables and the Alpha Palette Color Lookup Table may be different in each classification component.

The output of the compositor shall be range-limited ("clamped") to ensure that the outputs are guaranteed to be within a valid range of color values regardless of the validity of the weighting transfer functions. This isolates subsequent compositor components and the Profile Connection Space Transform from overflow errors.

### FF.2.4 Additional Volumetric Considerations

#### FF.2.4.1 Annotations in Volumetric Presentations States

The Volumetric Presentation States provide two ways for annotating views:

- Annotations on the Volumetric Presentation View

- Annotations described by coordinates in the Volumetric Presentation State Reference Coordinate System (VPS-RCS) with optional references to Structured Reports providing context.

Annotations on the view provide the application of free unformatted text or vector graphics as described in the Section C.10.5 “Graphic Annotation Module” in PS3.3. Since the Graphic Annotation Module allows only the addition of graphics to the 2D view defined by the Presentation State without attached clinical meaning, Volumetric Graphic Annotations provide a mechanism to create annotations in the VPS-RCS with optional references to other objects which can have structured context attached.

Volumetric Graphic Annotations can be specified in two variants: either via Graphic Types with 3D coordinates, as defined in Section C.18.9.1.2 “Graphic Type” in PS3.3, or via a reference to inputs of the Presentation State. The latter is intended to be used to display annotation labels for segmentations of the volume data set; for example, when a lesion has been marked via a Segmentation IOD and this segmentation is rendered together with the anatomical data.

Since annotations which are added via the Graphic Annotation Module are defined within the display space, they should not be used to point to clinical relevant structures which would be positioned on a different anatomy after manipulation.

In contrast since Volumetric Graphic Annotations have coordinates in the VPS-RCS, applications can still show them after a user has manipulated the initial view which has been defined by the Presentation State.

The exact visual representation of the annotations is at the discretion of the display application, as well as the mechanisms which may be employed to ensure that Volumetric Graphic Annotations are sufficiently visible, even if the location in the volume is not visible in the current view. E.g. for a Graphic Type POINT a display application might render a crosshair at the specified position in the volume or a sphere with an arrow pointing to it instead of rendering Volumetric Graphic Annotations directly within the volume a projection of the annotations may be rendered as an overlay on top of the view.

However, annotations can be grouped into Graphic Layers and it is suggested that applications provide mechanisms to define rendering styles per Graphic Layer.

See Section XXX.3.4 “Replacing Set of Derived Images With Single VPS Using Crosscurve Animation” in PS3.17 and Section XXX.3.5 “Volumetric Annotations (example: Trajectory Planning)” in PS3.17 for examples of Volumetric Graphic Annotations.

#### FF.2.4.2 Volumetric Animation

Several different styles of animation are defined in Volumetric Presentation States. In general, an animation style will vary either the input, processing, or view geometry in order to produce a varying presentation view. This section describes each of the animation styles and how it produces an animated view.

##### FF.2.4.2.1 Input Sequence Animation

A Presentation Animation Style (0070,1A01) value of INPUT_SEQ indicates that Input Sequence Animation is being specified. In this animation style, a single Volumetric Presentation State is defined which includes input items in the Volumetric Presentation State Input Sequence (0070,1201) with different values of Input Sequence Position Index (0070,1203). The animated presentation view is produced by sequencing through values of Input Sequence Position Index (0070,1203) at a specified animation rate Recommended Animation Rate (0070,1A03), where each value of the index produces one 'frame' of the animated view from inputs that have that value of Input Sequence Position Index (0070,1203). See Figure FF.3.2-1.

### Note

For example, a set of inputs could be temporally related volumes of a moving anatomical structure like the heart.

There may be more than one input item in Volumetric Presentation State Input Sequence (0070,1201) with the same value of Input Sequence Position Index (0070,1203), in which case the inputs are processed together to produce the frame of the animated view.

### Note

For example, pairs of input items could represent the same volume input at a point in time with two different segmentation croppings (representing different organ structures) that are blended together into a single view.

Figure FF.3.2-1. Input Sequence Animation

##### FF.2.4.2.2 Presentation Sequence Animation

A Presentation Animation Style (0070,1A01) value of PRESENTATION_SEQ indicates that Presentation Sequence Animation is being specified. In this animation style, a set of Volumetric Presentation States are applied sequentially. See Figure FF.3.2-2.

### Note

One example of the use of presentation sequence animation is a view of a moving heart wherein a stent is at a stationary position at the center of the view. Because the geometry of each view frame is slightly different, separate Volumetric Presentation State instances are required for each view frame.

Each Volumetric Presentation State of the set is identified by having the same value of Presentation Sequence Collection UID (0070,1102). The order of application of these Presentation States is determined by the value of Presentation Sequence Position Index (0070,1103) defined in the Presentation State. The animated presentation view is produced by sequencing through values of presentation sequence position index at a specified animation rate Recommended Animation Rate (0070,1A03), where each value of the index produces one 'frame' of the animated view produced by that Volumetric Presentation State.

Figure FF.3.2-2. Presentation Sequence Animation

##### FF.2.4.2.3 Crosscurve Animation

A Presentation Animation Style (0070,1A01) value of CROSSCURVE indicates that Crosscurve Animation is being specified. In this animation style, a Presentation State defines a Planar MPR view at the beginning of a curve defined in Animation Curve Sequence (0070,1A04). The Planar MPR view is stepped a distance Animation Step Size (0070,1A05) along the curve defined in Animation Curve Sequence (0070,1A04) at the rate specified by Recommended Animation Rate (0070,1A03) in steps per second. See Figure FF.3.2-3.

### Note

A typical application of this animation style is motion along a curve centered within the colon or a blood vessel.

Figure FF.3.2-3. Crosscurve Animation

##### FF.2.4.2.4 Flythrough Animation

A Presentation Animation Style (0070,1A01) value of FLYTHROUGH indicates that Flythrough Animation is being specified. In this animation style, the Volumetric Presentation State defines an initial volume rendered view and a specified movement of the view along a path through the volume. See Figure FF.2.4.2.4-1.

Figure FF.2.4.2.4-1. Flythrough Animation

##### FF.2.4.2.5 Swivel Animation

A Presentation Animation Style (0070,1A01) value of SWIVEL indicates that Swivel Animation is being specified. In this animation style, a Presentation State defines an initial volume rendered using Viewpoint Position (0070,1603), Viewpoint LookAt Point (0070,1604) and Viewpoint Up Direction (0070,1605). When the animation begins, the view begins to rotate back and forth about an axis parallel to the Viewpoint Up Direction (0070,1605) that intersects the Viewpoint LookAt Point (0070,1604). The extent of the arc of rotation is defined by Swivel Range (0070,1A06) and the maximum rate of rotation is specified by Recommended Animation Rate (0070,1A03) in degrees per second, although it is recommended that the changes of direction at the ends of the swivel range be smooth which implies a slowing of the rotation as the endpoints are approached.

#### FF.2.5 Display Layout

The layout of multiple Volumetric Presentation States is not specified by the Volumetric Transformation process. However, there are attributes within Volumetric Presentation States that can influence the overall display layout.

For instance:

- Anatomic Region Sequence (0008,2218) specifies the anatomic region covered by the Volumetric Presentation State

- View Code Sequence (0054,0220) describes the view of the anatomic region of interest (e.g., Coronal, Oblique transverse, etc.)

- Presentation Display Collection UID (0070,1101) identifies the Presentation State as one of a set of views intended to be displayed together

- SOP Class UID (0008,0016) identifies that the Presentation State describes the volumetric view

The use of these attributes allows a display application to create an appropriate presentation of multiple Volumetric Presentation States, whether through the application of a Hanging Protocol instance, a Structured Display instance or by means of an application-specific algorithm.

For an example of their use, see Annex XXX “Volumetric Presentation States (Informative)” in PS3.17.

## FF.3 Behavior of An SCP

In addition to the behavior for the Storage Service Class specified in Section B.2.2 “Behavior of an SCP”, the following additional requirements are specified for the Volumetric Presentation State Storage SOP Classes:

- a display device acting as an SCP of these SOP Classes shall make all mandatory presentation attributes available for application to the referenced volumetric data at the discretion of the display device user, for all Image Storage SOP Classes defined in the Conformance Statement for which the Volumetric Presentation State Storage SOP Class is supported.

- a display device acting as an SCP of the Volumetric Presentation State Storage SOP Classes shall support the Segmentation SOP Class for cropping and the Spatial Registration SOP Class for registration.

- a display device acting as an SCP of a Volume Rendering Volumetric Presentation State Storage SOP Class shall perform an unshaded volume rendering if the Render Shading Module is absent from the SOP Instance.

- a display device acting as an SCP of the Volumetric Presentation State Storage SOP Classes is not required to support the Presentation Animation Module.

- a display device acting as an SCP of any of the Volumetric Presentation State Storage SOP Classes is not required to support Structured Reporting Storage SOP Classes.

## FF.4 Conformance

In addition to the Conformance Statement requirements for the Storage Service Class specified in Section B.4.3 “Conformance Statement Requirements”, the following additional requirements are specified for the Volumetric Presentation State Storage SOP Classes:

### FF.4.1 Conformance Statement For An SCU

The following behavior shall be documented in the Conformance Statement of any implementation claiming conformance to a Volumetric Presentation State Storage SOP Class as an SCU:

- For an SCU of a Volumetric Presentation State Storage SOP Class that is creating a SOP Instance of the Class, the manner in which presentation related attributes are derived from a displayed image, operator intervention or defaults, and how they are included in the IOD.

- For an SCU of a Volumetric Presentation State Storage SOP Class, the Image Storage SOP Classes that are also supported by the SCU and which may be referenced by instances of the Volumetric Presentation State Storage SOP Class.

### FF.4.2 Conformance Statement For An SCP

The following behavior shall be documented in the Conformance Statement of any implementation claiming conformance to a Volumetric Presentation State Storage SOP Class as an SCP:

- For an SCP of a Volumetric Presentation State Storage SOP Class that is displaying an image referred to by a SOP Instance of the Class, the manner in which presentation related attributes are used to influence the display of an image.

- For an SCP of a Volumetric Presentation State Storage SOP Class, the Image Storage SOP Classes that are also supported by the SCP and which may be referenced by instances of the Volumetric Presentation State Storage SOP Class.

- For an SCP of a Volumetric Presentation State Storage SOP Class, whether the Presentation Animation Module is supported, and if not supported, any notifications or lack of notifications to the user that the context information is not displayed.

- For an SCP of a Volumetric Presentation State Storage SOP Class, whether references to Structured Report instances are supported, and if not supported, any notifications or lack of notifications to the user that the context information is not displayed.

# GG Non-Patient Object Storage Service Class

## GG.1 Overview

### GG.1.1 Scope

The Non-Patient Object Storage Service Class defines an application-level class-of-service that allows one DICOM AE to send a SOP Instance of a non-patient-related information object to another DICOM AE.

### GG.1.2 Service Definition

The Non-Patient Object Storage Service Class includes several SOP Classes, each using an IOD defined in PS3.3 (see Section GG.3). The Non-Patient Object Storage Service Class uses the C-STORE DIMSE Service specified in PS3.7. A successful completion of the C-STORE has the following semantics:

- Both the SCU and the SCP support the type of information to be stored.

- The transferred information is stored in some medium.

- For some time frame, the stored information may be accessed.

### Note

1. Support for the Non-Patient Object Storage Service Class does not imply support for any related Query/Retrieve Service Classes.

2. The duration of the storage is also implementation dependent, but is described in the Conformance Statement of the SCP.

3. The Non-Patient Object Storage Service Class is intended to be used in a variety of environments: e.g., for workstations to transfer SOP Instances to other workstations or archives, for archives to transfer SOP Instances to workstations, etc.

## GG.2 Association Negotiation

The Association negotiation rules as defined in PS3.7 apply to the SOP Classes of this Service Class. No SOP Class specific application information (extended negotiation) is used.

## GG.3 SOP Classes

The application-level services addressed by the Non-Patient Object Storage Service Class definition are specified in the SOP Classes specified in Table GG.3-1.

Table GG.3-1. Standard SOP Classes

SOP Class Name | SOP Class UID | IOD Specification (defined in PS3.3)
--- | --- | ---
Hanging Protocol Storage | 1.2.840.10008.5.1.4.38.1 | Hanging Protocol IOD
Color Palette Storage | 1.2.840.10008.5.1.4.39.1 | Color Palette IOD
Generic Implant Template Storage | 1.2.840.10008.5.1.4.43.1 | Generic Implant Template IOD
Implant Assembly Template Storage | 1.2.840.10008.5.1.4.44.1 | Implant Assembly Template IOD
Implant Template Group Storage | 1.2.840.10008.5.1.4.45.1 | Implant Template Group IOD
CT Defined Procedure Protocol Storage | 1.2.840.10008.5.1.4.1.1.200.1 | CT Defined Procedure Protocol IOD
Protocol Approval Storage | 1.2.840.10008.5.1.4.1.1.200.3 | Protocol Approval IOD

## GG.4 Behavior

This Section defines the SCU and SCP behavior for the Non-Patient Object Storage Service. The C-STORE DIMSE-C Service shall be the mechanism used to transfer SOP Instances between peer DICOM AEs as described in PS3.7.

In addition to the behaviors specified in this section, there may be SOP Class specific behavior requirements, as described in Section GG.6.

### GG.4.1 Service Class User

A DICOM AE that claims conformance to any of the Non-Patient Object Storage SOP Classes as an SCU shall be capable of sending a SOP Instance that meets the requirements of the related IOD. The Service shall be invoked by the SCU through the use of the DIMSE C-STORE request used in conjunction with the SOP Class.

The SCU shall recognize the status of the C-STORE service and take appropriate action based on the success or failure of the service. The Non-Patient Object Storage Service places no further requirements on what the SCU shall do other than that it shall distinguish between successful and failed C-STORE responses. This behavior shall be documented as part of the Conformance Statement.

### GG.4.2 Service Class Provider

A DICOM AE that claims conformance to any of the Non-Patient Object Storage SOP Classes as an SCP shall receive and store a SOP Instance through the use of the DIMSE C-STORE service used in conjunction with the specific SOP Class.

The SCP shall store and provide access to all Type 1, Type 2, and Type 3 Attributes defined in the IOD, as well as any Standard Extended Attributes (including Private Attributes) included in the SOP Instance. The SCP may, but is not required to validate that the Attributes of the SOP Instance meet the requirements of the associated IOD.

The SCP shall not modify the values of any Attributes in the SOP Instance without assigning a new SOP Instance UID, except that the SCP may modify values of, or add, Type 3 and Private Attributes that do not change the semantics or interpretation of the SOP Instance.

### Note

E.g., an SCP may add values to Alternate Content Description Sequence (0070,0087), to provide an additional description in another language.

The SCP shall return, via the C-STORE response primitive, the Response Status Code applicable to the associated request. By performing this service successfully, the SCP indicates that the SOP Instance has been successfully stored. Table GG.4-1 defines the specific response status code values that might be returned in a C-STORE response. General status code values and fields related to status code values are defined for C-STORE DIMSE Service in PS3.7.

Table GG.4-1. C-STORE Response Status Values

Service Status | Further Meaning | Status Codes | Related Fields
--- | --- | --- | ---
Failure | Refused: Out of Resources | A700 | (0000,0902)
Error: Data Set Does Not Match SOP Class | A900 | (0000,0901) (0000,0902)
Error: Cannot Understand | C000 | (0000,0901) (0000,0902)
Success |  | 0000 | None

### Note

Status Codes are returned in DIMSE response messages (see PS3.7). The code values stated in column "Status Codes" are returned in Status Command Element (0000,0900).

## GG.5 Conformance Statement Requirements

An implementation may conform to any of the Non-Patient Object Storage SOP Classes as an SCU, SCP or both. The Conformance Statement shall be in the format defined in PS3.2.

### GG.5.1 SCU Conformance Requirements

An implementation that conforms to a SOP Class of the Non-Patient Object Storage Service as an SCU shall state in its Conformance Statement:

- Whether the implementation is a SOP Instance creator for the SOP Class.

  ### Note

  There may be SOP Class specific Conformance Statement requirements for creators of SOP Instances. See Section GG.6.

- The behavior of the SCU in the case of a success C-STORE response status.

- The behavior of the SCU in each case of a failure C-STORE response status.

### GG.5.2 SCP Conformance Requirements

An implementation that conforms to a SOP Class of the Non-Patient Object Storage Service as an SCP shall state in its Conformance Statement:

- The behavior of the SCP in the case of a successful C-STORE operation, including the access method for a stored SOP Instance, and the duration of the storage.

- The meaning of each case of a failure C-STORE response status, as well as appropriate recovery action.

### Note

There may be SOP Class specific Conformance Statement requirements for applications that interpret the SOP Instances for display or further processing. See Section GG.6.

## GG.6 Application Behavior for Standard SOP Classes

This section specifies SOP Class specific behaviors for conformant applications.

### GG.6.1 Hanging Protocol SOP Class

#### GG.6.1.1 Instance Creator

An implementation that conforms to the Hanging Protocol Storage SOP Class as an SCU and is a SOP Instance creator shall state in its Conformance Statement:

- The manner in which the values of the Hanging Protocol IOD Attributes are derived from displayed images, layouts, operator intervention or defaults.

- Any Private Attributes that are used as the value of Selector Attribute (0072,0026) in the Image Set Selector Sequence, Filter Operations Sequence or Sorting Operations Sequence.

- The optional Attributes that may be included in a Hanging Protocol SOP Instance.

#### GG.6.1.2 Display Application

An implementation that conforms to the Hanging Protocol Storage SOP Class as an SCP and interprets the contents of instances of the SOP Class to control the display of images, shall apply all mandatory Hanging Protocol and presentation intent Attributes to the sets of displayed images. Such an implementation shall state in its Conformance Statement:

- The range of display environments that the application will support (e.g., number of screens, size of screens, overlapping image boxes).

- The optional Attributes of the Hanging Protocol IOD that it is capable of interpreting and those that are not supported.

- Description of application behavior when the value of Partial Data Display Handling (0072,0208) is ADAPT_LAYOUT or zero length.

- Description of application behavior when the display environment of the Hanging Protocol Instance differs from the display environment of the application, with respect to preserving layout versus spatial resolution.

- The Image Storage SOP Classes for which the Hanging Protocol Storage SOP Class is supported for display control.

### GG.6.2 Color Palette Storage SOP Class

#### GG.6.2.1 Instance Creator

An implementation that conforms to the Color Palette Storage SOP Class as an SCU and is a SOP Instance creator shall state in its Conformance Statement:

- The optional Attributes that may be included in a Color Palette SOP Instance.

#### GG.6.2.2 Display Application

An implementation that conforms to the Color Palette Storage SOP Class as an SCP and interprets the contents of instances of the SOP Class to affect the display of images, shall apply all mandatory Color Palette and presentation intent Attributes to the applicable displayed images.

An implementation that conforms to the Color Palette Storage SOP Class as an SCP and interprets the contents of instances of the SOP Class to affect the display of images shall state in its Conformance Statement:

- The optional Attributes of the Color Palette IOD that it is capable of interpreting and those that are not supported.

- The Image Storage SOP Classes for which application of the Color Palette Storage SOP Class is supported

### GG.6.3 Template Storage SOP Classes

An implementation that is a Generic Implant Template Storage, Implant Assembly Template Storage, or Implant Template Group Storage SOP Class SCU may modify information in a SOP Instance that it has previously sent or received. When this SOP Instance is modified and sent to an SCP, it shall be assigned a new SOP Instance UID if there is addition, removal or update of any Attribute within:

- Generic Implant Template Description Module

- Generic Implant Template 2D Drawings Module

- Generic Implant Template 3D Models Module

- Generic Implant Template Mating Features Module

- Generic Implant Template Planning Landmarks Module

- Implant Assembly Template Module

- Implant Template Group Module

- Surface Mesh Module

Referential integrity between sets of related SOP instances shall be maintained.

### GG.6.4 CT Defined Procedure Protocol Storage SOP Class

An implementation that conforms to the CT Defined Procedure Protocol Storage SOP Class as an SCP shall not modify constraints for which the value of the Modifiable Constraint Flag (0082,0038) is NO.

Modifying protocol constraints changes the semantics of a CT Defined Procedure Protocol Storage SOP Instance.

### GG.6.5 Protocol Approval Storage SOP Class

Approvals are based on assertions. Receipt or generation of an assertion will interact with organizational authentication and authorization policies. For example, an approval may be received by mistake as part of the transfer of a patient record.

# HH Defined Procedure Protocol Query/Retrieve Service Classes

## HH.1 Overview

### HH.1.1 Scope

The Defined Procedure Protocol Query/Retrieve Service Classes define application-level classes-of-service that facilitate access to Defined Procedure Protocol composite objects.

### HH.1.2 Conventions

Key Attributes serve two purposes; they may be used as Matching Key Attributes or as Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

### Note

Matching Keys are typically used in an SQL 'WHERE' clause. Return Keys are typically used in an SQL 'SELECT' clause to convey the Attribute values.

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5 Data Structure and Semantics.

### HH.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Defined Procedure Protocol Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of Defined Procedure Protocol composite SOP Instances. The information is organized into an Information Model. The Information Models for the different SOP Classes specified in this Annex are defined in Section HH.6.

### HH.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of a Defined Procedure Protocol Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Defined Procedure Protocol Query/Retrieve Service Classes are implemented using the DIMSE-C C-FIND, C-MOVE and C-GET services as defined in PS3.7 Message Exchange Protocol.

An SCP of this SOP Class shall support Level-2 conformance as defined in Section B.4.1.

The semantics of the C-FIND service are the same as those defined in the Service Definition of the Basic Worklist Management Service Class.

The semantics of the C-MOVE service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

The semantics of the C-GET service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

## HH.2 Defined Procedure Protocol Information Models Definitions

The Defined Procedure Protocol Information Models are identified by the SOP Class negotiated at Association establishment time. Each SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

The Defined Procedure Protocol Information Models are defined in Section HH.6, with the Entity-Relationship Model Definition and Key Attributes Definition analogous to those defined in the Worklist Information Model Definition of the Basic Worklist Management Service.

## HH.3 Defined Procedure Protocol Information Models

The Defined Procedure Protocol Information Models are based upon a one level entity:

- Defined Procedure Protocol object instance.

The Defined Procedure Protocol object instance contains Attributes associated with the Procedure Protocol IE of the Composite IODs as defined in PS3.3 Information Object Definitions.

## HH.4 DIMSE-C Service Groups

### HH.4.1 C-FIND Operation

See the C-FIND Operation definition for the Section K.4.1.3.1 “"Worklist" Search Method”, and substitute "Defined Procedure Protocol" for "Worklist". The "Worklist" Search Method shall be used.

The SOP Class UID identifies the Defined Procedure Protocol Information Model against which the C-FIND is to be performed. The Key Attributes and values allowable for the query are defined in the SOP Class definitions for the Defined Procedure Protocol Information Model.

#### HH.4.1.1 Service Class User Behavior

No SOP Class specific SCU behavior is defined.

#### HH.4.1.2 Service Class Provider Behavior

No SOP Class specific SCP behavior is defined.

### HH.4.2 C-MOVE Operation

See the C-MOVE Operation definition for the Section C.4.2 “C-MOVE Operation”. No Extended Behavior or Relational-Retrieve is defined for the Defined Procedure Protocol Query/Retrieve Service Classes.

Query/Retrieve Level (0008,0052) is not relevant to the Defined Procedure Protocol Query/Retrieve Service Classes, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

### HH.4.3 C-GET Operation

See the C-GET Operation definition for the Section C.4.2 “C-MOVE Operation”. No Extended Behavior or Relational-Retrieve is defined for the Defined Procedure Protocol Query/Retrieve Service Classes.

### Note

More than one entity may be retrieved, using List of UID matching.

## HH.5 Association Negotiation

See the Association Negotiation definition for the Section K.5 “Association Negotiation”.

## HH.6 SOP Class Definitions

### HH.6.1 Defined Procedure Protocol Information Model

#### HH.6.1.1 E/R Models

The Defined Procedure Protocol Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Defined Procedure Protocol Instance.

Figure HH.6-1. Defined Procedure Protocol Information Model E/R Diagram

#### HH.6.1.2 Defined Procedure Protocol Attributes

Table HH.6-1 defines the Attributes of the Defined Procedure Protocol Information Model.

Table HH.6-1. Attributes for the Defined Procedure Protocol Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Protocol Context
Custodial Organization Sequence | (0040,A07C) | R | 2 |
>Institution Name | (0008,0080) | R | 2 |
>Institution Code Sequence | (0008,0082) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Code Meaning | (0008,0104) | - | 1 |
Responsible Group Code Sequence | (0008,0220) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Protocol Name | (0018,1030) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Potential Scheduled Protocol Code Sequence | (0018,9906) | R | 1 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Potential Requested Procedure Code Sequence | (0018,9907) | R | 1 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Potential Reasons for Procedure | (0018,9908) | - | 2 |
Potential Reasons for Procedure Code Sequence | (0018,9909) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Potential Diagnostic Tasks | (0018,990A) | - | 2 |
Predecessor Protocol Sequence | (0018,990E) | R | 2 |
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Content Creator's Name | (0070,0084) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Instance Creation Date | (0008,0012) | R | 1 | Shall be retrieved with Single Value or Range Matching. See Instance Creation Time for further details.
Instance Creation Time | (0008,0013) | R | 1 | Shall be retrieved with Single Value or Range Matching. If both Instance Creation Date and Instance Creation Time are specified for Range Matching, they are to be treated as as if they were a single DateTime Attribute e.g.,the date range July 5 to July 7 and the time range 10am to 6pm specifies the time period starting on July 5, 10am until July 7, 6pm.
Clinical Trial Context
Clinical Trial Sponsor Name | (0012,0010) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Clinical Trial Protocol ID | (0012,0020) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
Equipment Specification
Equipment Modality | (0008,0221) | R | 1 |
Model Specification Sequence | (0018,9912) | R | 2 |
>Manufacturer | (0008,0070) | R | 1 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
>Manufacturer's Related Model Group | (0008,0222) | R | 2 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
>Manufacturer's Model Name | (0008,1090) | R | 2 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
>Software Versions | (0018,1020) | R | 2 | Shall be retrieved with Single Value, Wild Card, or Universal Matching.
>Device Serial Number | (0018,1000) | - | 2 |
Patient Positioning
Anatomic Region Sequence | (0008,2218) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |
Primary Anatomic Structure Sequence | (0008,2228) | R | 2 | This Attribute shall be retrieved with Sequence or Universal matching.
>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>Code Meaning | (0008,0104) | - | 1 |

#### HH.6.1.3 Conformance Requirements

An implementation may conform to one or more of the Defined Procedure Protocol Query/Retrieve SOP Classes as an SCU or SCP. The Conformance Statement shall be in the format defined in PS3.2.

##### HH.6.1.3.1 SCU Conformance

###### HH.6.1.3.1.1 C-FIND SCU Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class shall support queries against the Defined Procedure Protocol Information Model using the C-FIND SCU Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.2 and Section HH.4.1).

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class as an SCU shall state in its Conformance Statement whether it requests Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

###### HH.6.1.3.1.2 C-MOVE SCU Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - MOVE SOP Class as an SCU shall support transfers against the Defined Procedure Protocol Information Model, using the C-MOVE SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.2.1 and Section HH.4.2).

###### HH.6.1.3.1.3 C-GET SCU Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - GET SOP Class as an SCU shall support transfers against the Defined Procedure Protocol Information Model, using the C-GET SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.2).

##### HH.6.1.3.2 SCP Conformance

###### HH.6.1.3.2.1 C-FIND SCP Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class as an SCP shall support queries against the Defined Procedure Protocol Information Model, using the C-FIND SCP Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.3).

### Note

The contents of the Model Specification Sequence (0018,9912) would be useful to index for systems that support query or selection of appropriate Protocols for specific systems.

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class as an SCP shall state in its Conformance Statement whether it supports Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to the Defined Procedure Protocol Information Model - FIND SOP Class as an SCP shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

###### HH.6.1.3.2.2 C-MOVE SCP Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - MOVE SOP Class as an SCP shall support transfers against the Defined Procedure Protocol Information Model, using the C-MOVE SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.3.1).

### Note

It is expected that a device that does not match the contents of the Model Specification Sequence (0018,9912) will not execute the Protocol.

An implementation that conforms to the Defined Procedure Protocol Information Model - MOVE SOP Class as an SCP, which generates transfers using the C-MOVE operation, shall state in its Conformance Statement appropriate Storage Service Class, under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### HH.6.1.3.2.3 C-GET SCP Conformance

An implementation that conforms to the Defined Procedure Protocol Information Model - GET SOP Class as an SCP shall support retrievals against the Defined Procedure Protocol Information Model using the C-GET SCP baseline behavior described for the Query/Retrieve Service Class in Section C.4.3.3.

#### HH.6.1.4 SOP Classes

The SOP Classes of the Defined Procedure Protocol Query/Retrieve Service Class identify the Information Models, and the DIMSE-C operations supported.

Table HH.6.1.4-1. Defined Procedure Protocol SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Defined Procedure Protocol Information Model - FIND | 1.2.840.10008.5.1.4.20.1
Defined Procedure Protocol Information Model - MOVE | 1.2.840.10008.5.1.4.20.2
Defined Procedure Protocol Information Model - GET | 1.2.840.10008.5.1.4.20.3

# II Protocol Approval Query/Retrieve Service Classes

## II.1 Overview

### II.1.1 Scope

The Protocol Approval Query/Retrieve Service Classes define application-level classes-of-service that facilitate access to Protocol Approval composite objects.

### II.1.2 Conventions

Key Attributes serve two purposes; they may be used as Matching Key Attributes or as Return Key Attributes. Matching Key Attributes may be used for matching (criteria to be used in the C-FIND request to determine whether an entity matches the query). Return Key Attributes may be used to specify desired return Attributes (what elements in addition to the Matching Key Attributes have to be returned in the C-FIND response).

### Note

Matching Keys are typically used in an SQL 'where' clause. Return Keys are typically used in an SQL 'select' clause to convey the Attribute values.

Matching Key Attributes may be of Type "required" (R) or "optional" (O). Return Key Attributes may be of Type 1, 1C, 2, 2C, 3 as defined in PS3.5 Data Structure and Semantics.

### II.1.3 Query/Retrieve Information Model

In order to serve as an SCP of the Protocol Approval Query/Retrieve Service Class, a DICOM AE possesses information about the Attributes of a number of Protocol Approval composite SOP Instances. The information is organized into an Information Model. The Information Models for the different SOP Classes specified in this Annex are defined in Section II.6.

### II.1.4 Service Definition

Two peer DICOM AEs implement a SOP Class of a Protocol Approval Query/Retrieve Service Class with one serving in the SCU role and one serving in the SCP role. SOP Classes of the Protocol Approval Query/Retrieve Service Classes are implemented using the DIMSE-C C-FIND, C-MOVE and C-GET services as defined in PS3.7 Message Exchange Protocol.

An SCP of this SOP Class shall support Level-2 conformance as defined in Section B.4.1.

The semantics of the C-FIND service are the same as those defined in the Service Definition of the Basic Worklist Management Service Class.

The semantics of the C-MOVE service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

The semantics of the C-GET service are the same as those defined in the Service Definition of the Query/Retrieve Service Class, with the exception that there is only one level of retrieval.

## II.2 Protocol Approval Information Models Definitions

The Protocol Approval Information Models are identified by the SOP Class negotiated at Association establishment time. Each SOP Class is composed of both an Information Model and a DIMSE-C Service Group.

The Protocol Approval Information Models are defined in Section II.6, with the Entity-Relationship Model Definition and Key Attributes Definition analogous to those defined in the Worklist Information Model Definition of the Basic Worklist Management Service.

## II.3 Protocol Approval Information Models

The Protocol Approval Information Models are based upon a one level entity:

- Protocol Approval object instance.

The Protocol Approval object instance contains Attributes associated with the Approval IE of the Composite IODs as defined in PS3.3 Information Object Definitions.

## II.4 DIMSE-C Service Groups

### II.4.1 C-FIND Operation

See the C-FIND Operation definition for the Basic Worklist Management Service Class (Section K.4.1) , and substitute "Approval" for "Worklist". The "Worklist" Search Method shall be used.

The SOP Class UID identifies the Protocol Approval Information Model against which the C-FIND is to be performed. The Key Attributes and values allowable for the query are defined in the SOP Class definitions for the Protocol Approval Information Model.

#### II.4.1.1 Service Class User Behavior

No SOP Class specific SCU behavior is defined.

#### II.4.1.2 Service Class Provider Behavior

No SOP Class specific SCP behavior is defined.

### II.4.2 C-MOVE Operation

See the C-MOVE Operation definition for the Query/Retrieve Service Class (Section C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Protocol Approval Query/Retrieve Service Classes.

Query/Retrieve Level (0008,0052) is not relevant to the Protocol Approval Query/Retrieve Service Classes, and therefore shall not be present in the Identifier. The only Unique Key Attribute of the Identifier shall be SOP Instance UID (0008,0018). The SCU shall supply one UID or a list of UIDs.

### Note

More than one entity may be retrieved, using List of UID matching.

### II.4.3 C-GET Operation

See the C-GET Operation definition for the Query/Retrieve Service Class (Section C.4.2). No Extended Behavior or Relational-Retrieve is defined for the Protocol Approval Query/Retrieve Service Classes.

### Note

More than one entity may be retrieved, using List of UID matching.

## II.5 Association Negotiation

See the Association Negotiation definition for the Basic Worklist Management Service Class (Section K.5).

## II.6 SOP Class Definitions

### II.6.1 Protocol Approval Information Model

#### II.6.1.1 E/R Models

The Protocol Approval Information Model consists of a single entity. In response to a given C-FIND request, the SCP shall send one C-FIND response per matching Protocol Approval Instance.

Figure II.6-1. Protocol Approval Information Model E/R Diagram

#### II.6.1.2 Protocol Approval Attributes

Table II.6-1 defines the Attributes of the Protocol Approval Information Model.

### Note

Since protocol approvals are generally relevant only in the context of the protocol instance being approved, many searches will be looking for approvals that list a particular protocol instance in the Approval Subject Sequence (0044,0109).

Table II.6-1. Attributes for the Protocol Approval Information Model

Description / Module | Tag | Matching Key Type | Return Key Type | Remark / Matching Type
--- | --- | --- | --- | ---
SOP Common
Specific Character Set | (0008,0005) | - | 1C | This Attribute is required if expanded or replacement character sets are used. See Section C.2.2.2 and Section C.4.1.1.
SOP Class UID | (0008,0016) | R | 1 |
SOP Instance UID | (0008,0018) | U | 1 |
Instance Creation Date | (0008,0012) | R | 1 | Shall be retrieved with Single Value or Range Matching. See Instance Creation Time for further details.
Instance Creation Time | (0008,0013) | R | 1 | Shall be retrieved with Single Value or Range Matching. If both Instance Creation Date and Instance Creation Time are specified for Range Matching, they are to be treated as as if they were a single DateTime Attribute e.g.,the date range July 5 to July 7 and the time range 10am to 6pm specifies the time period starting on July 5, 10am until July 7, 6pm.
Protocol Approval
Approval Subject Sequence | (0044,0109) | R | 1 |
>Referenced SOP Class UID | (0008,1150) | R | 1 | Shall be retrieved with List of UID Matching.
>Referenced SOP Instance UID | (0008,1155) | R | 1 | Shall be retrieved with List of UID Matching.
Approval Sequence | (0044,0100) | R | 1 |
>Assertion Code Sequence | (0044,0101) | R | 1 |
>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>Code Meaning | (0008,0104) | - | 1 |
>Assertion UID | (0044,0102) | - | 1 |
>Asserter Identification Sequence | (0044,0103) | R | 1 |
>>Observer Type | (0040,A084) | - | 1 |
>>Person Name | (0040,A123) | R | 1 |
>>Person Idenfication Code Sequence | (0040,1101) | R | 1 |
>>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Code Meaning | (0008,0104) | - | 1 |
>>Organizational Role Code Sequence | (0044,010A) | R | 2 |
>>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Code Meaning | (0008,0104) | - | 1 |
>>Station Name | (0008,1010) | - | 3 |
>>Device UID | (0018,1002) | - | 3 |
>>Manufacturer | (0008,0070) | - | 3 |
>>Manufacturer's Model Name | (0008,1090) | - | 3 |
>>Station AE Title | (0008,0055) | - | 3 |
>>Institution Name | (0008,0080) | R | 1 |
>>Institution Code Sequence | (0008,0082) | R | 1 |
>>>Code Value | (0008,0100) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Coding Scheme Designator | (0008,0102) | R | 1 | This Attribute shall be retrieved with Single Value or Universal matching.
>>>Code Meaning | (0008,0104) | - | 1 |
>>Institutional Department Name | (0008,1040) | U | 2 |
>Assertion DateTime | (0044,0104) | R | 1 | This Attribute shall be retrieved with Single Value or Range Matching.
>Assertion Expiration DateTime | (0044,0105) | R | 2 | This Attribute shall be retrieved with Single Value or Range Matching.
>Assertion Comments | (0044,0106) | - | 2 |
>Related Assertion Sequence | (0044,0107) | U | 1 |
>>Referenced Assertion UID | (0044,0108) | U | 1 |
Enhanced General Equipment
Manufacturer | (0008,0070) | - | 1 |
Manufacturer's Model Name | (0008,1090) | - | 2 |
Software Versions | (0018,1020) | - | 2 |

### Note

The Enhanced General Equipment Module describes the equipment that created the Protocol Approval instance, not the equipment on which a referenced Protocol will be performed.

#### II.6.1.3 Conformance Requirements

An implementation may conform to one or more of the Protocol Approval Query/Retrieve SOP Classes as an SCU or SCP. The Conformance Statement shall be in the format defined in PS3.2.

##### II.6.1.3.1 SCU Conformance

###### II.6.1.3.1.1 C-FIND SCU Conformance

An implementation that conforms to the Protocol Approval Information Model - FIND SOP Class shall support queries against the Protocol Approval Information Model using the C-FIND SCU Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.2 and Section II.4.1).

An implementation that conforms to the Protocol Approval Information Model - FIND SOP Class as an SCU shall state in its Conformance Statement whether it requests Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

An implementation that conforms to the Protocol Approval Information Model - FIND SOP Class as an SCU shall state in its Conformance Statement how it makes use of Specific Character Set (0008,0005) when encoding queries and interpreting responses.

###### II.6.1.3.1.2 C-MOVE SCU Conformance

An implementation that conforms to the Protocol Approval Information Model - MOVE SOP Class as an SCU shall support transfers against the Protocol Approval Information Model, using the C-MOVE SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.2.1 and Section II.4.2).

###### II.6.1.3.1.3 C-GET SCU Conformance

An implementation that conforms to the Protocol Approval Information Model - GET SOP Class as an SCU shall support transfers against the Protocol Approval Information Model, using the C-GET SCU baseline behavior described for the Query/Retrieve Service Class (see Section C.4.3.2).

##### II.6.1.3.2 SCP Conformance

###### II.6.1.3.2.1 C-FIND SCP Conformance

An implementation that conforms to the Protocol Approval Information Model - FIND SOP Class as an SCP shall support queries against the Protocol Approval Information Model, using the C-FIND SCP Behavior described for the Basic Worklist Management Service Class (see Section K.4.1.3).

### Note

The contents of the Referenced SOP Instance UID (0008,1155) in the Approval Subject Sequence (0044,0109) would be useful to index since querying for approvals of a specific Protocol instance will be very common.

An implementation that conforms to the Protocol Approval Information Model - FIND SOP Class as an SCP shall state in its Conformance Statement:

- whether it supports Type 3 Return Key Attributes, and shall list these Optional Return Key Attributes.

- how it makes use of Specific Character Set (0008,0005) when interpreting queries, performing matching and encoding responses.

- any behaviors that involve not returning matching instances (e.g. not returning an older approval instance that has been superceded/overridden by a newer approval instance).

###### II.6.1.3.2.2 C-MOVE SCP Conformance

An implementation that conforms to the Protocol Approval Information Model - MOVE SOP Class as an SCP shall support transfers against the Protocol Approval Information Model, using the C-MOVE SCP baseline behavior described for the Query/Retrieve Service Class (see Section C.4.2.3.1).

An implementation that conforms to the Protocol Approval Information Model - MOVE SOP Class as an SCP, which generates transfers using the C-MOVE operation, shall state in its Conformance Statement appropriate Storage Service Class, under which it shall support the C-STORE sub-operations generated by the C-MOVE.

###### II.6.1.3.2.3 C-GET SCP Conformance

An implementation that conforms to the Protocol Approval Information Model - GET SOP Class as an SCP shall support retrievals against the Protocol Approval Information Model using the C-GET SCP baseline behavior described for the Query/Retrieve Service Class in Section C.4.3.3.

#### II.6.1.4 SOP Classes

The SOP Classes of the Protocol Approval Query/Retrieve Service Class identify the Information Models, and the DIMSE-C operations supported.

Table II.6.1.4-1. Protocol Approval SOP Classes

SOP Class Name | SOP Class UID
--- | ---
Protocol Approval Information Model - FIND | 1.2.840.10008.5.1.4.1.1.200.4
Protocol Approval Information Model - MOVE | 1.2.840.10008.5.1.4.1.1.200.5
Protocol Approval Information Model - GET | 1.2.840.10008.5.1.4.1.1.200.6