RIS PD161 CRIS DICOM Conformance Statement

RIS PD161 CRIS DICOM Conformance Statement

RIS_PD161_CRIS_DICOM_Conformance_statement

Contents

1Introduction

1.1Intended Audience

1.2Important considerations for the reader

2Acronyms and Abbreviations

3Implementation Model

3.1Overview

3.2Application Data Flow

4AE Specifications

4.1Abstract syntax table

4.2Transfer syntax table

4.3Association Acceptance Policy

4.3.1 General

4.3.2 Maximum PDU Size

4.3.3 Number of Associations

4.3.4 Implementation Identification Information

5Association initiation policy

5.1General

5.2MPPS Specific Policy

6Description of Functionality

6.1Verification

6.2Modality Work List Information Model

6.3Study Component Management

6.4Modality Performed Procedure Step

6.4.1 Validation

6.4.2 Message Sequence

6.4.3 Post Processing

6.5Secondary Capture reporting

6.5.1 Storage Details

6.5.2 CRIS Configuration

7Configuration

7.1Modality Worklists

7.1.1 Overview

7.1.2 Configuration Properties

7.1.3 Custom population of result objects

7.2Modality Performed Procedure Step

7.3Report send as Secondary Capture Image

1Introduction

This DICOM conformance statement describes the DICOM functionality of the CRIS Radiological Information System.

CRIS acts as a Service Class Provider in order to supply work lists to a compatible Modality workstation operating as Service Class User.

CRIS now supports the MPPS DICOM service so acts as a Service Class User accepting MPPS messages from appropriate Service Class Providers, i.e. scanning modalities.

CRIS now supports the transmission of reports outbound on the DICOM interface.

This version of the specification applies to CRIS interface release 2.09.10k onwards.

1.1Intended Audience

This document is intended for system integrators third party suppliers and potential customers, the reader is assumed to be familiar with the DICOM standard.

1.2Important considerations for the reader

This conformance statement by itself is insufficient to guarantee successful connectivity between CRIS and software/equipment from other vendors. Readers should be aware of the following issues.

  • Integration of software and equipment from different vendors goes beyond the scope of the DICOM 3 standard and DICOM conformance statements. It is the responsibility of the user or user’s agent to assess the application requirements and design a solution that integrates software and equipment from different vendors.
  • CRIS has been tested to ensure that the implementation corresponds with this conformance statement. When attempting to determine the compatibility of equipment from another vendor the first step would be to compare the DICOM conformance statement of the equipment under consideration with this document. If comparison of the two conformance statements suggests that the two systems should be compatible then additional tests should be carried out to ensure that the required functionality and performance if achievable.
  • As the DICOM 3 standard evolves Healthcare Software Solutions LTD reserves the right to make changes to the CRIS DICOM functionality. The user or user’s agent should ensure that any equipment connected via DICOM also evolves with the DICOM standard. Failure to do so may result in loss of connectivity.

2Acronyms and Abbreviations

The following acronyms and abbreviations are used in this document

  • DICOM Digital Communications and Imaging in Medicine
  • SCP Service Class Provider
  • SCU Service Class User
  • SOPService Object Pair
  • UID Unique Identifier
  • AE Application Entity
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • PDUProtocol Data Unit
  • MPPS Modality Performed Procedure Step
  • SC Secondary capture reporting

3Implementation Model

3.1Overview

CRIS implements the DICOM Modality Work List Information Model FIND SOP class as an SCP in order to provide work lists to modality workstations. The DICOM Study Component Management SOP class is also implemented as SCP and may optionally be used by workstations to signal completion of work list items, thus triggering subsequent removal from the work list.

3.2Application Data Flow

The CRIS AE receives DICOM protocol requests over TCP/IP. In order to service these requests connections are made to the CRIS database to look up and update work lists. The CRIS AE is usually co located with the CRIS Database although this is not a requirement.

DICOM

Interface

4AE Specifications

CRIS contains one Application Entity per TCP/IP listener (the default listener is on port 104, other listeners may be added).

4.1Abstract syntax table

CRIS accepts associations with the following presentation contexts. Please note that the report query and some storage functionality (shaded) is not supported in this version of CRIS.

Class Name / UID / Role of CRIS
Verification / 1.2.840.10008.1.1 / SCP
Modality Work list Information Model FIND / 1.2.840.10008.5.2.1.4.31 / SCP
Study Component Management / 1.2.840.10008.3.1.2.3.2 / SCP
Modality Performed Procedure Step / 1.2.840.10008.3.1.2.3.3 / SCP
Report Query / 1.2.840.113532.3500.8 / SCP
Computed Radiography Image Storage / 1.2.840.10008.5.1.4.1.1.1 / SCP
CT Image Storage / 1.2.840.10008.5.1.4.1.1.2 / SCP
MR Image Storage / 1.2.840.10008.5.1.4.1.1.4 / SCP
Nuclear Medicine Image Storage / 1.2.840.10008.5.1.4.1.1.20 / SCP
Positron Emission Tomography Image Storage / 1.2.840.10008.5.1.4.1.1.128 / SCP
RT Image Storage / 1.2.840.10008.5.1.4.1.1.481.1 / SCP
Secondary Capture Image Storage / 1.2.840.10008.5.1.4.1.1.7 / SCP
Ultrasound Image Storage / 1.2.840.10008.5.1.4.1.1.6.1 / SCP
Ultrasound Multi Frame Storage / 1.2.840.10008.5.1.4.1.1.3.1 / SCP
Visible Light Endoscopic Image Storage / 1.2.840.10008.5.1.4.1.1.77.1.1 / SCP
Visible Light Microscopic Image Storage / 1.2.840.10008.5.1.4.1.1.77.1.2 / SCP
Visible Light Photographic Image Storage / 1.2.840.10008.5.1.4.1.1.77.1.4 / SCP
X-Ray angiographic Bi-Plane Image Storage / 1.2.840.10008.5.1.4.1.1.12.3 / SCP
X-Ray angiographic Image Storage / 1.2.840.10008.5.1.4.1.1.12.1 / SCP
X-Ray Radiographic Image Storage / 1.2.840.10008.5.1.4.1.1.12.2 / SCP

4.2Transfer syntax table

Each of the above SOP classes may be transferred using the following transfer syntaxes

Transfer Syntax Name / UID
Explicit VR Big Endian / 1.2.840.10008.1.2.2
Explicit VR Little Endian / 1.2.840.10008.1.2.1
Implicit VR Little Endian / 1.2.840.10008.1.2

4.3Association Acceptance Policy

4.3.1General

From the 2.09.10e revision of CRIS, the connection handler on the DICOM interface initially examines the ‘DicomEquipment’ table to ensure a specific modality has been configured. If the modality has not been configured within this table, the association request will be rejected and the connection severed. This functionality applies to all DICOM services, i.e. modality work lists, MPPS and structured reporting (SR).

Previous CRIS versions use the AE Title of the SCU to determine the work list filter to apply and any per workstation configuration customizations.

4.3.2Maximum PDU Size

Maximum PDU size is normally not specified; for SCU’s that require this it may be specified per client AE Title.

4.3.3Number of Associations

The number of concurrent associations supported is limited only by memory and networking capabilities of the operating system and for practical applications should not be an issue.

4.3.4Implementation Identification Information

The AE Title is configurable for each TCP/IP listener. The default is “CRIS”.

5Association initiation policy

5.1General

CRIS acts only as an SCP and as such does not initiate associations.

5.2MPPS Specific Policy

Even though MPPS specific associations are not initiated by CRIS, there are monitored for inactivity. A scenario could exist where a number of modalities have created associations but have not initiated any MPPS messages. In this case, CRIS will monitor this inactivity and close the association after a preconfigured delay. The delay is default to 5 minutes.

6Description of Functionality

6.1Verification

The verification service allows a workstation to verify connectivity with the CRIS DICOM service. Upon receipt of a C-ECHO request CRIS will respond with an Echo response.

6.2Modality Work List Information Model

CRIS provides work list services to connected modality work stations. The work lists are generated using a pre-defined query configured for each individual work station.

Upon receipt of a C-FIND request, the configuration values for the specific AE Title are looked up and a suitable database query is executed in order to build the work list.

CRIS events and examinations are selected for inclusion in the work list based upon the following.

  1. Radiographer details and examination start time have not been added to the exam (this data is normally added post processing)
  2. The event is attended
  3. The event is either for today, or (prior to nine am) yesterday.
  4. Neither the event nor exam has been deleted.

Additional filtering can be configured on a per workstation basis in order to select certain modalities etc. Optionally filtering can be performed based upon the data supplied in the incoming query.

CRIS will send a response message containing DICOM objects with the relevant data for each work list entry. When all work list entries have been sent a terminating response with no data is sent.

CRIS will populate the response DICOM object as per the following table. Only attributes that are requested in the original C-FIND request will be populated. To accommodate work stations that require attributes not normally provided by CRIS the system may be configured to provide additional data on a per work station basis. Any attributes requested that are neither specified here or in the “per AE Title” configuration will be populated with the values received in the original C-FIND request.

Attribute / Tag / Type / Note
Study Date / 0008,0020 / DA / Date of the examination
Study Time / 0008,0030 / TM / Booked Time of the examination
Accession Number / 0008,0050 / SH / Accession number
Modality / 0008,0060 / CS / Modality, this is populated with the value that Cris received in the original C-FIND request
Referring Physicians Name / 0008,0090 / PN / Name of the referring doctor
Code Value / 0008,0100 / SH / Examination procedure code
Study Description / 0008,1030 / LO / Description of the procedure
Name of physicians reading study / 0008,1060 / PN / Identifier code for the intended radiologist populated in the surname part of the field
Patients Name / 0010,0010 / PN / Patient Name
Patient ID / 0010,0020 / LO / Patient Identifier
Patients Birth Date / 0010,0030 / DA / Patients Date of Birth
Patients Sex / 0010,0040 / CS / Patient Sex
Patients Age / 0010,1010 / AS / Patients AGE
Ethnic Group / 0010,2160 / SH / Patients ethnic origin
Study Instance UID / 0020,000D / UI / This is populated with the examination key from CRIS, if a site identifier code has been configured a universally unique identifier is generated of the form
1.2.826.0.1.2112370.siteID.examKey
Requesting Physician / 0032,1032 / PN / Referring clinicians name populated in the surname part of the field
Requesting Service / 0032,1033 / LO / Referral source
Requested Procedure Description / 0032,1060 / LO / Description of the procedure
Requested Procedure Code Sequence / 0032,1064 / SQ / Sequence
Patients institutional residence / 0038,0400 / LO / Referring ward/location
Scheduled station AE title / 0040,0001 / AE / Returns the value supplied by the calling workstation in the request
Scheduled Procedure Step Start Date / 0040,0002 / DA / Date of the examination
Scheduled Procedure Step Start Time / 0040,0003 / TM / Booked Time of the examination
Scheduled Procedure Step Description / 0040,0007 / LO / Procedure description
Scheduled Procedure Step Sequence / 0040,0100 / SQ / Sequence

6.3Study Component Management

Study component management allows a work station to communicate completion of an examination to CRIS so as to update the work list. The SCU should send an N-CREATE request with a DICOM object containing the following attributes.

Attribute / Tag / Type / Note
Referenced Study Instance / 0008,1110 / SQ
>Referenced SOP Instance UID / 0008,1155 / UI / CRIS will use the value of this attribute to identify the work list entry that has been completed.

6.4Modality Performed Procedure Step

6.4.1Validation

The validation is performed when the association is first established. The AE Title is verified against a value stored within the ‘Dicom Equipment’ configuration table. If this verification fails, no association is established.

6.4.2Message Sequence

The modality first sends CRIS an ‘N-CREATE’ message with a status of ‘IN PROGRESS’.The DICOM object sent to CRIS contains various pieces of information, some of which CRIS needs to store. The main piece of data is the ‘accession number’. With this number the required exam and associated event can be found. The table below shows all the attributes stored to CRIS.

Attribute / Tag / Type / Note
AccessionNumber / (0008,0050) / Short / Used to find the exam and associated event.
PPS Status / (0040,0252) / String / Identifies message,
IN PROGRESS
Performed Location / (0040,0244) / Short / Room where exam took place.
If null, default value used from ‘Equipment’ configuration table.
Procedure Start Time / (0040,0245)
StudyInstanceUID / (0020,000D) / Integer / Store for future reference
AffectedSOPinstanceUID / (0008,1155) / Integer / Used to reference other messages in sequence.

The modality could now send CRIS one of a possible two messages.

The ‘N-SET’ message with a status of ‘DISCONTINUED’ will indicate to CRIS that the previous ‘IN PROGRESS’ message was sent in error and can be ignored. If this message is received all the previously stored data is cleared.

The ‘N-SET’ message with a status of ‘COMPLETED’ will indicate to CRIS that the exam has been completed. The information sent to CRIS will contain, amongst other things, such data as projection information, dosage type and dosage amount. The table below shows all the attributes stored to CRIS.

Attribute / Tag / Type / Note
PPS End Time / (0040,0251) / End time of procedure step.
PPS Status / (0040,0252) / String / Identifies message,
COMPLETED
Total Number of Exposures / (0040,0301) / String
Single Exposure
Entrance Dose / (0040,0302) / String
Multiple Exposures
Exposure Dose Sequence / (0040,030E) / Sequence / Holds data for each exposure.
Dosage Type per exposure. / Retrieved from procedure location (room)
Projection Type per exposure / Hard-coded to ‘MODX’
KVP / (0018,0060) / String / KVP dosage.

6.4.3Post Processing

When CRIS receives the IN PROGRESS message from a modality, a lock is placed on the event. When another user tries to post-process this event, a warning is given indicating to the user that a modality has an interest on this event.

Once the modality issues a COMPLETED message, the lock is removed. The post-processing screen can now be opened. The data received from the modality has been inserted appropriately.

6.5Secondary Capture reporting

The report is firstly converted into the appropriate ‘dicom’ data fields by code in the interface.Here, various CRIS data is copied into the relevant DICOM data fields. This data is then converted into a ‘pixel’ image and transmitted to the ‘PACS’.Here is a list of the CRIS -> DICOM data mappings:-

CRIS / DICOM SR / DICOM TAG
Patient Module
Patient’s Surname, Forenames, and Title / PatientName / (0010,0010)
Patient ID / PatientID / (0010,0020)
“TEXT” / TypeOfPatientID / (0010,0022)
Patient’s date of birth / PatientBirthDate / (0010,0030)
Patient’s sex / PatientSex / (0010,0040)
If(hospitalNumber equals patient ID
Hospital’s site code
Else
HospitalNumber.sitecode,hospital number / IssurerOfPatientID
OtherPatientIDsSequence / (0008,1120)
(0010,1002)
Other patient IDs / OtherPatientID / (0010,1000)
Patient’s Ethnic group / EthnicGroup / (0010,2160)
Patient’s consent comment / PatientComments / (0010,4000)
“NO” / PatientIdentifyRemoved / (0012,0062)
General Study Module
Study Instance UID / StudyInstanceUID / (0020,000D)
Exam date / StudyDate / (0008,0020)
Exam start time / StudyTime / (0008,0030)
Referrer name / ReferringPhysicianName / (0008,0090)
Exam key / StudyID / (0020,0010)
Exam accession number / AccessionNumber / (0008,0050)
Examination code, table(“99CRISEXAM”), examcode description / ProcedureCodeSequence / (0008,1032)
Patient Study Module
Patient’s age(in years) / PatientAge / (0010,1010)
Patient’s weight / PatientWeight / (0010,1030)
Patient’s height / PatientSize / (0010,1020)
General Series Module
“OT” / Modality / (0008,0060)
SystemSettings.UID_PREFIX +
siteUID + “18.3423234” / SeriesInstanceUID / (0020,000E)
“1” / SeriesNumber / (0020,0011)
General Equipment Module
“Healthcare Software Solutions LTD” / Manufacturer / (0008,0070)
“CRIS” / ManufacturerModelName / (0008,1090)
Trust’s name / InstitutionName / (0008,0080)
SC Equipment Module
“SD” / ConversionType / (0008,0064)
“OT” / Modality / (0008,0060)
WorkStation ID / SecondaryCaptureDeviceID / (0018,1010)
“Healthcare Software Solutions LTD” / SecondaryCaptureDeviceManufacturer / (0018,1016)
“CRIS” / SecondaryCaptureDeviceManufacturerModelName / (0018,1018)
“CRIS printed report” / DigitalImageFormatAcquired / (0018,1023)
General Image Module
Exam key / InstanceNumber / (0020,0013)
NULL / PatientOrientation / (0020,0020)
Date / ContentDate, ContentTime / (0008,0023)
(0008,0033)
True, False / ImageType = ORIGINAL\\SECONDARY / (0008,0008)
Exam key / AcquisitionNumber / (0020,0012)
Date / AcquisitionDate, AcquisitionTime / (0008,0022)
(0008,002A)
1 / ImagesInAcquisition / (0020,1002)
“CRIS printed report / ImageComments / (0020,4000)
PopulateImagePixelModule
Gets the images within the report and converts them into pixel data. This is done for each page of the report. The following Dicom data is configured during this process.
CRIS DATA / DICOM DATA / DICOM TAG
Byte [] pixels / PixelData / (7FE0,0010
Samples per pixel in Raster / SamplesPerPixel / (0028,0002)
“RGB” / PhotometricInterpretation / (0028,0004)
Height / Rows / (0028,0010)
Width / Columns / (0028,0011)
“8” / BitsAllocated / (0028,0100)
“8” / BitsStored / (0028,0101)
“7” / HighBit / (0028,0102)
“0” / PixelRepresentation / Pixel Representation
“0” / PlanarConfiguration / Planar Configuration
PopulateSOPCommonModule
Various UIDs are stored against the report, SOPClassUID, SOPInstanceUID.
Everything has now been obtained and configured appropriately.
The network association is now created, the report is sent and the association is closed down, all in one command.

See section 7.3 below for further details.

6.5.1Storage Details

CRIS uses the printing subsystem to convert reports prior to sending them along the DICOM SC interface.

The DICOM SC interface converts the report into raw pixels.

A standard single page A4 report will appear on the PACS with a size of 1.4Mb, therefore if the report is over a number of pages then the total size will be 1.4Mb x number of pages.

If the report is configured to print at A3, then the resulting size of each DICOM SC page will be 2.8M. If A5 then 0.7M and so on.

6.5.2CRIS Configuration

The only configuration needed within the CRIS application is within the ‘ExamsPerHospitalTable’. There is a ‘checkbox’ named ‘Send report via Dicom I/F’. This is configured on a per exam basis. If this is selected for a particular exam, the report for that examination will be sent to ‘PACS’ via the DICOM SC interface.

7Configuration

7.1Modality Worklists

7.1.1Overview

Configuration of individual modality work list filtering and customised DICOM tag population is done through the CRIS tables’ setup system format editor.

format

For each workstation a format is created with a name of DICOM.AETITLE where AETITLE is the Application Entity title of the workstation.

The format should contain a list of properties that define the behaviour of the work list server when dealing with requests for that particular workstation.

7.1.2Configuration Properties

Property Name / Description
Query / SQL query clause to filter the work list for this workstation.
Example:
Query=EXAMCD_MODALITY=’X’ and PATIENT_SEX=’F’
Would select only female patients where the examination modality is “X”
HospitalNumberSites / Comma separated list of sites that may hold hospital numbers for patients. If this is set the BEST_HOSP_NO field becomes available for custom population of the result object.
Example:
HospitalNumberSites=RNZ02,RNZ05
PACSIdentifier / The PACS that this workstation is connected to. This should ideally be set for each workstation as doing so ensures that the patient id sent in 0010,0020 will be the ID known on PACS and makes the PACSID table available for custom population of the result object.
Example:
PACSIdentifier=RNZ
SiteID / Used for population of the study UID sent in 0020,000D. This should be set to a number which is unique for each CRIS installation.
Example:
SiteID=999
Debug / If set to Yes the work list server will write additional debugging info to its log whilst processing requests for this workstation.
Example:
Debug=Yes
MaximumAge / The number of Hours into the day that the work list server will still return entries for yesterday, defaults to 9
MaxPDUSize / Specifies the maximum PDU size that CRIS will specify when negotiating an association. The default is for CRIS to not specify PDU size.
ApplyWorkstationFilter / Enables filtering based on the contents of the query received from the workstation.
Example:
ApplyWorkstationFilter=Yes
Dicom Tag / To specify additional data to be sent in the results provide a property name that matches the required DICOM tag.
Example 1:
The workstation requires patients’ weight to be supplied, however CRIS does not have this data at the time of building the work list, so we need to provide a dummy value of 1.
0010,1030=1
Example 2:
The workstation requires hospital number in the patient id field.
HospitalNumberSites=RNZ02
0010,0020={BEST_HOSP_NO}
Notice that BEST_HOSP_NO is in curly brackets to signify that it is a field to be taken from the database rather than a hard coded value
See the section on custom population of result objects below for further details.

7.1.3Custom population of result objects