DICOM PS3.2 2020c - Conformance

C.4.2 AE Specifications (Current)
Prev | C.4 Networking | Next

### C.4.2 AE Specifications

#### C.4.2.1 DICOMSRV AE Specification

This application provides Standard Conformance to the following DICOM SOP Classes:

##### C.4.2.1.1 SOP Classes

Table C.4.2-1. SOP Classes for AE DICOMSRV

SOP Class Name | SOP Class UID | SCU | SCP
--- | --- | --- | ---
Verification | 1.2.840.10008.1.1 | No | Yes
Modality Worklist | 1.2.840.10008.5.1.4.31 | No | Yes
Modality Performed Procedure Step | 1.2.840.10008.3.1.2.3.3 | No | Yes

##### C.4.2.1.2 Association Policies

###### C.4.2.1.2.1 General

The Application Context Name for DICOM is the only Application Context proposed.

Table C.4.2-2. DICOM Application Context

Application Context Name | 1.2.840.10008.3.1.1.1

###### C.4.2.1.2.2 Number of Associations

DICOMSRV will support as many simultaneous associations as SCP as are requested by Workflow SCUs up to a configurable maximum. DICOMSRV limits the number of concurrent associations to a given Workflow SCU as described below.

Table C.4.2-3. Number of Associations as an SCP for AE DICOMSRV

Maximum number of simultaneous associations | Configurable value. Maximum of 3 simultaneous associations to a given SCU

###### C.4.2.1.2.3 Asynchronous Nature

Asynchronous communication (multiple outstanding transactions over a single association) is not supported.

###### C.4.2.1.2.4 Implementation Identifying Information

Table C.4.2-4. DICOM Implementation Class and Version for DICOMSRV

Implementation Class UID | xxxxxxx.yyy.etc.ad.inf.usw
Implementation Version Name | DICOMRis_260

##### C.4.2.1.3 Association Initiation Policy

DICOMSRV does not initiate Associations.

##### C.4.2.1.4 Association Acceptance Policy

DICOMSRV will accept associations for the MWL, MPPS and Verification SOP Classes as an SCP. The job runs in the background and forks a new process for each connection request from a Remote AE

###### C.4.2.1.4.1 Activity - Configured AE Requests MWL Query

###### C.4.2.1.4.1.1 Description and Sequencing of Activities

When Modality Worklist SCUs query DICOMSRV the queries run against the Scheduled Procedure Step Worklist (referred to hereafter as the 'SPS Worklist' or 'Worklist') in the DICOMRis database. There is a configurable mapping between the Universal Service ID contained in the HL7 Order messages (see Table C.8.1-4) and one or more Requested Procedures within the DICOMRis database. A Requested Procedure may, in turn, map to 1 or more Scheduled Procedure Steps though the relation is usually 1-to-1. This mapping is also site-configurable. The relation between Accession Number (0008,0050) and Requested Procedure ID (0040,1001) is 1-to-1 within DICOMRis and these attributes have the same value in all MWL responses. Scheduled Procedure Step entries are added and removed from the Worklist as follows:

- Add Scheduled Procedure Step Entries Normal Pathway - As orders are received from the HIS via HL7 or entered using DICOMRis' Ordering and Scheduling application, additions are made to the SPS Worklist in the DICOMRis database per the mapping specified above.

- Add Scheduled Procedure Step Entries Exception Pathway - Users can interactively create additional Scheduled Procedure Step entries for a given Requested Procedure using the Procedure Update application. It may be necessary to create additional entries under certain conditions such as when it is discovered that a procedure must be redone after having previously been marked as completed. This does not apply to canceled procedures

- Remove Scheduled Procedure Step Entries Normal Pathway - An SPS entry is removed from the SPS Worklist under the following circumstances:

- As mentioned previously, DICOMRis supports common RIS function to set the state of the procedure as it progresses from being ordered to being resulted and signed. Setting the procedure state may be initiated interactively via the Procedure Update application or as a result of various events. An entry in the SPS Worklist is removed when the Requested Procedure that is the parent of the SPS is set to a configured status. This configuration is system-wide applying equally to all procedures.

- If configured to change the state of a Requested Procedure on receipt of an MPPS N-CREATE or N-SET referencing the procedure then the change in state may result in removal of SPS entries related to the procedure as described above

- Remove Entries Exception Pathway - When a procedure is canceled all SPS entries related to that procedure are removed from the Worklist.

Remove Entries Maintenance Pathway - SPS entries that are still in the Worklist a configurable time after their scheduled start date/time will be removed by a day-end maintenance job.

In the table below the following applies:

- To cause a given action to occur, MPPS messages must reference the parent Requested Procedure related to the SPS entry and applicable configuration must be in place.

Table C.4.2-5. Scheduled Procedure Step Entry Actions Table

Events | Scheduled Procedure Step Entry Actions
--- | ---
Order received from HIS or entered using DICOMRis application | Add one or more Entries to Worklist
User adds SPS entry interactively | Add Entry to Worklist
MPPS message received that changes procedure state of parent procedure to status configured for removal of child SPS entry from Worklist | Remove Entry from Worklist
Current time exceeds SPS scheduled time by a Worklist configured time interval | Remove Entry from Worklist
Parent procedure canceled | Remove one or more Entries from Worklist
Parent procedure set to a state that causes removal of child SPS entries from Worklist | Remove one or more Entries from Worklist

Figure C.4.2-1. Sequencing Diagram for Activity: Configured AE Requests MWL Query

The figure above is a possible sequence of messages between a Modality Worklist SCU and DICOMSRV.

1. The Modality opens an Association with DICOMSRV for the purpose of querying for a Modality Worklist

2. The Modality sends an MWL C-FIND query to DICOMSRV

3. DICOMSRV queries its database using the attributes from the C-FIND Request and returns 0 to N C-FIND responses depending on matches returned from the database. DICOMSRV checks for a C-FIND Cancel Request after a configured number of responses are sent. If a Cancel is received then no further Pending responses are sent.

4. DICOMSRV sends the final C-FIND response

5. The Modality closes the Association

###### C.4.2.1.4.1.2 Accepted Presentation Contexts

Table C.4.2-6. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity 'Configured AE Requests MWL Query'

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Modality Worklist Information Model - FIND | 1.2.840.10008.5.1.4.31 | Implicit VR Little Endian | 1.2.840.10008.1.2 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

###### C.4.2.1.4.1.2.1 Presentation Context Acceptance Criterion

Depending on configuration, DICOMSRV may or may not accept multiple Presentation Contexts containing the same Abstract Syntax.

###### C.4.2.1.4.1.2.2 Transfer Syntax Selection Policy

Transfer Syntaxes in addition to the default Implicit VR Little Endian may be configured for a given Abstract Syntax. DICOMSRV's preferred Transfer Syntax is Explicit VR Little Endian and this will be selected if offered.

###### C.4.2.1.4.1.3 SOP Specific Conformance for Modality Worklist SOP Class

DICOMSRV does not support matching on any optional matching key attributes.

DICOMSRV supports case-insensitive matching on the following Person Name Value Representation elements:

Patient Name (0010,0010)

DICOMSRV supports optional return key attributes as described in the table below.

Table C.4.2-7. Modality Worklist Optional Return Keys Supported

Description/Module | Tag | Remark
--- | --- | ---
Scheduled Procedure Step
>Scheduled Protocol Code Sequence | (0040,0008) |
>>Code Meaning | (0008,0104) |
>Comments on the Scheduled Procedure Step | (0040,0400) | This attribute, if valued, will contain details of the protocol to be used in carrying out this step. The attribute could contain a full description of the protocol or simply indicate modifications to the protocol designated by the Scheduled Protocol Code Sequence
>Requested Contrast Agent | (0032,1070) |
Requested Procedure
Reason for the Requested Procedure | (0040,1002) |
Requested Procedure Comments | (0040,1400) |
Imaging Service Request
Reason for the Imaging Service Request | (0040,2001) |
Imaging Service Request Comments | (0040,2400) |
Requesting Service | (0032,1033) |
Issuing Date of Imaging Service Request | (0040,2004) |
Issuing Time of Imaging Service Request | (0040,2005) |
Placer Order Number / Imaging Service Request | (0040,2016) |
Filler Order Number / Imaging Service Request | (0040,2017) |
Order entered by | (0040,2008) |
Order Enterer's Location | (0040,2009) |
Visit Status
Patient's Institution Residence | (0038,0400) |
Visit Admission
Referring Physician's | (0008,0090) |
Referring Physician's Address | (0008,0092) |
Referring Physician's Phone Numbers | (0008,0094) |
Admitting Diagnosis Description | (0008,1080) |
Admitting Date | (0038,0020) |
Admitting Time | (0038,0021) |
Patient Identification
Issuer of Patient ID | (0010,0021) |
Patient Demographic
Occupation | (0010,2180) |
Patient's Address | (0010,1040) |
Country of Residence | (0010,2150) |
Patient's Telephone Numbers | (0010,2154) |
Ethnic Group | (0010,2160) |
Patient's Religious Preference | (0010,21F0) |
Patient Comments | (0010,4000) |
Patient Medical
Smoking Status | (0010,21A0) |
Last Menstrual Date | (0010,21D0) |

DICOMSRV returns C-FIND response statuses as specified below.

Table C.4.2-8. MWL C-FIND Response Status Reasons

Service Status | Further Meaning | Error Code | Reasons
--- | --- | --- | ---
Success | Matching is complete | 0000 | The response status code and meaning are logged in the job log file.
Failure | Out of resources | A700 | If the number of matches exceeds a configurable maximum this error code is returned. An error comment describing the error is also returned. The response status code and meaning are logged in the job log file.
Identifier does not match SOP class | A900 | This status is returned if the C-FIND request specifies query or Return keys that are not specified as part of the Modality Worklist Information Model - FIND SOP Class. The response status code and meaning are logged in the job log file.
Unable to process | C001 | This status is returned due to internal errors within DICOMSRV such as a processing failure response on a query of the DICOMRis database. The response status code and meaning are logged in the job log file.
Canceled | Matching terminated due to cancel request | FE00 | This status is returned if a Cancel Request is received from the SCU during the processing of a Modality Worklist request. The response status code and meaning are logged in the job log file.
Pending | Matching is continuing | FF00 | The status is returned with each matching response. A message is logged for each pending response.
Matching is continuing - Current match is supplied and any optional keys were supported in the same matter as required keys | FF01 | The status is returned with each matching response if one or more optional matching or return keys are not supported for existence. A message is logged for each pending response.

###### C.4.2.1.4.2 Activity - Configured AE Makes Procedure Step Request

When a configured remote AE sends a conformant association request including one of the Modality Performed Procedure Step Presentation Contexts in the table below then DICOMSRV will accept the Association.

###### C.4.2.1.4.2.1 Description and Sequencing of Activities

As mentioned above, DICOMSRV is started at system boot time and is thus ready to process MPPS messages at any time thereafter. The sequencing diagram below specifies a common flow of messages related to this activity. Prior to this sequence of messages it is necessary that orders have been received from the HIS interface or created via DICOMRis Ordering and Scheduling application. Attributes from the orders and created procedures, usually queried using MWL, will be included in the MPPS messages the Modality sends to DICOMSRV. Key attributes in the MPPS N-CREATE and N-SET, specified below, are extracted and matched against values in the DICOMRis database. A match allows full update of all applicable DICOMRis database tables.

Figure C.4.2-2. Sequencing Diagram for Activity: Configured AE Makes Procedure Step Request

The figure above is a possible sequence of messages and events for the Configured AE Makes Procedure Step Request activity.

1. The Modality opens an Association to update DICOMSRV using MPPS

2. The Modality sends an N-CREATE Request to indicate that it is performing one or more Requested Procedures

3. The Modality performs all or part of the procedure(s)

4. DICOMSRV stores the MPPS and executes the matching algorithm described in the conformance section below. If a successful match is found, then updates to various tables per the N-CREATE are performed. See Table C.4.2-10 for additional detail. In the matching case, the procedure state of the procedure(s) referenced in the MPPS is updated if so configured

5. The Modality sends an N-SET setting the status of the MPPS to COMPLETED

6. DICOMSRV stores the MPPS. If the N-CREATE for this step matched then updates are performed as specified in step 4

7. The Modality closes the Association

DICOMSRV also supports the 5 IHE Unidentified Patient Use Cases. Cases 1, 2 and 4 are transparent to the MPPS SCU and follow the normal flow. In case 3, the patient upon whom a given procedure must be immediately performed has been registered on the HIS and has a valid Patient ID but has no order specifying the applicable procedure. DICOMSRV recognizes this case when an MPPS N-CREATE is received with a matching Patient ID, zero-length Accession Number (0008,0050) and Requested Procedure ID (0040,1001). If the MPPS SCU is configured for support of IHE Trauma cases, DICOMSRV will order a procedure corresponding to the code contained in the Procedure Code Sequence (0008,1032), if this code is recognized, or will order a default procedure based on configuration. If the default procedure is ordered then a user may modify the procedure using DICOMRis Ordering and Scheduling application.

In case 5, there is no existing registration or order for a patient on whom a procedure must be immediately performed. Values are entered on the Modality identifying the patient and procedure. DICOMSRV recognizes this case when an MPPS N-CREATE is received containing a Patient ID within a configured range. This range will never contain Patient IDs created in the normal flow. If the MPPS SCU is configured for support of IHE Trauma cases, DICOMSRV will register the patient with the Patient ID provided and will order a procedure as described above.

###### C.4.2.1.4.2.2 Accepted Presentation Contexts

Table C.4.2-9. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity "Configured AE Makes Procedure Step Request"

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Modality Performed Procedure Step SOP Class | 1.2.840.10008.3.1.2.3.3 | Implicit VR Little Endian | 1.2.840.10008.1.2.1 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

DICOMSRV's preferred Transfer Syntax is Explicit VR Little Endian and this will be selected if offered.

###### C.4.2.1.4.2.3 SOP Specific Conformance for MPPS SOP Class

The table below lists all Modality Performed Procedure Step attributes, whether they may be created by N-CREATE and updated by N-SET and what parts of the DICOMRis database they are used to update. All MPPS messages and thus their attributes are stored for the configurable Purge Period described below. The 'Database Updates' column considers updates separate from the storage of MPPS messages. If no value is present this indicates that there are is no update to the database associated with the given element.

Table C.4.2-10. Supported N-SET/N-CREATE Attributes for MPPS

Attribute Name | Tag | N-Create | N-Set | Database Updates
--- | --- | --- | --- | ---
SOP Common Module
Specific Character Set | (0008,0005) | Y | N |
Performed Procedure Step Relationship Module
Scheduled Step Attribute Sequence | (0040,0270) | Y | N | Y
>Study Instance UID | (0020,000D) | Y | N | Overwrite existing value if different from received value
>Referenced Study Sequence | (0008,1110) | Y | N |
>>Referenced SOP Class UID | (0008,1150) | Y | N |
>>Referenced SOP Instance UID | (0008,1155) | Y | N |
>Accession Number | (0008,0050) | Y | N |
>Placer Order Number/Imaging Service Request | (0040,2006) | Y | N |
>Filler Order Number/Imaging Service Request | (0040,2007) | Y | N |
>Requested Procedure ID | (0040,1001) | Y | N |
>Requested Procedure Description | (0032,1060) | Y | N |
>Scheduled Procedure Step ID | (0040,0009) | Y | N |
>Scheduled Procedure Step Description | (0040,0007) | Y | N |
>Scheduled Protocol Code Sequence | (0040,0008) | Y | N |
>>Code Value | (0008,0100) | Y | N |
>>Coding Scheme designator | (0008,0102) | Y | N |
>>Code Meaning | (0008,0104) | Y | N |
Patient Name | (0010,0010) | Y | N |
Patient ID | (0010,0020) | Y | N |
Patient's Birth Date | (0010,0030) | Y | N |
Patient's Sex | (0010,0040) | Y | N |
Referenced Patient Sequence | (0008,1120) | Y | N |
>Referenced SOP Class UID | (0008,1150) | Y | N |
>Referenced SOP Instance UID | (0008,1155) | Y | N |
Performed Procedure Step Information
Performed Procedure Step ID | (0040,0253) | Y | N |
Performed Station AE Title | (0040,0241) | Y | N |
Performed Station Name | (0040,0242) | Y | N |
Performed Location | (0040,0243) | Y | N |
Performed Procedure Step Start Date | (0040,0244) | Y | N |
Performed Procedure Step Start Time | (0040,0245) | Y | N |
Performed Procedure Step Status | (0040,0252) | Y | Y |
Performed Procedure Step Description | (0040,0254) | Y | Y |
Performed Procedure Type Description | (0040,0255) | Y | Y |
Procedure Code Sequence | (0008,1032) | Y | Y |
>Code Value | (0008,0100) | Y | Y |
>Coding Scheme Designator | (0008,0102) | Y | Y |
>Code Meaning | (0008,0104) | Y | Y |
Performed Procedure Step End Date | (0040,0250) | Y | Y |
Performed Procedure Step End Time | (0040,0251) | Y | Y |
Comments on the Performed Procedure Step | (0040,0280) | Y | Y |
Image Acquisition Results
Modality | (0008,0060) | Y | N |
Study ID | (0020,0010) | Y | N |
Performed Protocol Code Sequence | (0040,0260) | Y | Y | If valued, stored with current and historical procedure records
>Code Value | (0008,0100) | Y | Y
>Coding Scheme Designator | (0008,0102) | Y | Y
>Code Meaning | (0008,0104) | Y | Y
Performed Series Sequence | (0040,0340) | Y | Y | Y
>Performing Physician's Name | (0008,1050) | Y | Y | Y
>Protocol Name | (0018,1030) | Y | Y | Stored with current and historical tables
>Operator's Name | (0008,1070) | Y | Y | If automatic setting of procedure states is enabled, stored in current and historical procedure tables to indicate who modified the state of the procedure
>Series Instance UID | (0020,000E) | Y | Y |
>Series Description | (0008,103E) | Y | Y |
>Retrieve AE Title | (0008,0054) | Y | Y |
Referenced Image Sequence | (0008,1140) | Y | Y |
>>Referenced SOP Class UID | (0008,1150) | Y | Y |
>>Referenced SOP Instance UID | (0008,1155) | Y | Y |
>Referenced Standalone SOP Instance Sequence | (0040,0220) | Y | Y |
>>Referenced SOP Class UID | (0008,1150) | Y | Y |
>>Referenced SOP Instance UID | (0008,1155) | Y | Y |
Billing and Material Management Code
Billing Procedure Step Sequence |  |  |  |
>Code Value | (0008,0100) | Y | Y |
>Coding Scheme Designator | (0008,0102) | Y | Y |
>Code Meaning | (0008,0104) | Y | Y |
Film Consumption Sequence | (0040,0321) | Y | Y |
> Number of Films | (2100,0170) | Y | Y | Updates Supply and Film-Procedure Tables
> Medium Type | (2000,0030) | Y | Y
> Film Size ID | (2010,0050) | Y | Y
Billing Supplies and Devices Sequence | (0040,0384) | Y | Y |
>Billing Item Sequence | (0040,0296) | Y | Y |
>>Code Value | (0008,0100) | Y | Y | Updates Supply table if Coding Scheme Designator for Billing Item Sequence is DICOMRIS_SUPPLY and the Code Value is a value from this Code Set
>>Coding Scheme Designator | (0008,0102) | Y | Y
>>Code Meaning | (0008,0104) | Y | Y
>Quantity Sequence | (0040,0293) | Y | Y
>>Quantity | (0040,0294) | Y | Y
>>Measuring Units Sequence | (0040,0295) | Y | Y
>>>Code Value | (0008,0100) | Y | Y
>>>Coding Scheme Designator | (0008,0102) | Y | Y
>>>Code Meaning | (0008,0104) | Y | Y

The list below details the behavior of DICOMSRV on occurrence of certain MPPS events and with respect to the coercion of attributes and duration of storage of MPPS messages:

- Reception of a New MPPS Instance - The MPPS message is stored in the database. DICOMSRV will then extract the Patient ID (0020,0010) and as many Accession Numbers (0008,0050) as there are items in the Scheduled Step Attribute Sequence (0040,0270) from the N-CREATE and try to match these values against the Patient Medical Record Number and one or more Accession Numbers in the DICOMRis database. If a non-matching N-CREATE is received, it and any following N-SETs will be marked as exceptions. These exceptions can be reconciled using the RisView application. Otherwise, DICOMSRV will:

- Update its database with values contained in the N-CREATE per table above.

- Update the state of each referenced procedure if so configured.

- Update of MPPS to 'DISCONTINUED' or 'COMPLETED' - The N-SET is stored in the database. If the preceding N-CREATE matched then the following is done:

- The attribute values in the N-SET will be used to update the DICOMRis database per table above.

- Update the state of each referenced procedure if so configured.

- Coercion of Attributes - DICOMSRV will coerce attributes as specified in Table C.8.1-3. This coercion may occur when a given step is set to the 'IN PROGRESS' or 'COMPLETED' or 'DISCONTINUED'

- Storage Duration for MPPS Messages - MPPS messages are purged from the DICOMRis database after a configurable period of time has elapsed since the step has been set to a final state or was last updated.

Table C.4.2-11. MPPS N-CREATE/N-SET Response Status Reasons

Service Status | Further Meaning | Error Code | Reasons
--- | --- | --- | ---
Success | Successful completion of the N-SET or N-CREATE Request | 0000 | The response status code and meaning are logged in the job log file.
Failure | Processing Failure | 0110 | Internal error within DICOMSRV. The response status code and meaning are logged in the job log file.
Duplicate SOP Instance | 0111 | This status is returned when the SCU has attempted to N-CREATE a SOP Instance that has already been created. The response status code and meaning are logged in the job log file
No such SOP Instance | 0112 | Status returned when the SCU is trying to SET a SOP instance that has not been created. The response status code and meaning are logged in the job log file
Missing Attribute | 0120 | This status is returned if an attribute required to be sent in the N-CREATE or required to be sent before completion of the Procedure Step has not been sent. The response status code and meaning are logged in the job log file.

###### C.4.2.1.4.3 Activity - Configured AE Requests Verification

###### C.4.2.1.4.3.1 Description and Sequencing of Activities

A remote AE sends an Echo Request to verify that DICOMSRV is awake and listening. DICOMSRV responds with success status as long as the request can be parsed.

###### C.4.2.1.4.3.2 Accepted Presentation Contexts

Table C.4.2-12. Acceptable Presentation Contexts for AE DICOMSRV and Real-World Activity Configured AE Requests Verification

Presentation Context Table
Abstract Syntax | Transfer Syntax | Role | Extended Negotiation
--- | --- | --- | ---
Name | UID | Name List | UID List
Verification SOP Class | 1.2.840.10008.1.1 | Implicit VR Little Endian | 1.2.840.10008.1.2 | SCP | None
Explicit VR Little Endian | 1.2.840.10008.1.2.1

###### C.4.2.1.4.3.3 SOP Specific Conformance

DICOMSRV provides Standard conformance to the DICOM Verification service class.

###### C.4.2.1.4.3.4 Presentation Context Acceptance Criterion

Depending on configuration, DICOMSRV may or may not accept multiple presentation contexts containing the same abstract syntax.

###### C.4.2.1.4.3.5 Transfer Syntax Selection Policy

Transfer Syntaxes in addition to the default Implicit VR Little Endian may be configured for a given Abstract Syntax using DICOM Tool's configuration files. When this is done, the first Transfer Syntax encountered in the configuration file, which matches a Transfer Syntax offered for a given Presentation Context, will be selected as the accepted Transfer Syntax for that Presentation Context.

Prev | Up | Next
C.4 Networking | Home | C.4.3 Network Interfaces

DICOM PS3.2 2020c - Conformance