DICOMFindMove node

Use a DICOMFindMove node to query a remote SCP for patients, studies, series, and images, and to move the results of a query to an application entity such as a DICOMInput node.

Purpose

The DICOMFindMove node is a Service Class User (SCU) for the Query and Retrieve service classes. The node has two closely related capabilities. The first capability is to query a remote Service Class Provider (SCP) for patients, studies, series, and images by using a DICOM C-FIND command. The search criteria are specified in an XML message that is propagated to the input terminal of the node. The result of the query is propagated to the output terminal of the node. The second capability of the DICOMFindMove node is to move the results of a query to an application entity by using a DICOM C-MOVE command. The destination of a move command can be a DICOMInput node that is configured in IBM® Integration Bus, a DICOM Picture Archiving Communications System (PACS), or any other DICOM SCP.

The DICOMFindMove node is contained in the Healthcare drawer of the message flow node palette, and is represented in the IBM Integration Toolkit by the following icon:

DICOMFindMove node icon

Using this node in a message flow

An example of how to use the DICOMFindMove node is shown in the Healthcare: Web service to DICOM built-in pattern in the Healthcare category in the Patterns Explorer view.

The query and move capabilities are combined in one node because they are closely related in DICOM. A move command is logically a find command followed by a copy of the results to a nominated destination. When the move operations complete, a results message is propagated to the output terminal of the DICOMFindMove node. The results message includes details of the success or failure of the move command. The results message contains a count of completed transfers, warnings, failures, error information, and a status field. If the status field contains any value other than zero, the move operation did not complete successfully.

The DICOM standard requires two application entities to be identified when they connect. Identification is achieved by using an Application Entity Title (AET), which is a text string of up to 16 characters. The DICOMFindMove node must be configured with its own AET and also the AET for the SCP to which it connects. The DICOMFindMove node does not connect unless the AET of the SCP exactly matches the value that is configured in the DICOMFindMove node. If the connection cannot be established, an error is produced. To copy the DICOM images to another destination, the source SCP for the move command must be pre-configured with the host name and port number of the target destination.
Note: The DICOMFindMove node does not persist connections from one message transfer to another.
Message schema
A single schema is used to describe all the DICOM XML messages that are sent and received by the DICOM nodes. However, only one of the complex types that are defined in the schema is used to structure each type of message. The FindMove complex type is used to define the messages that are received at the DICOMFindMove node input terminal and the Results complex type is used to define the messages that are sent from the DICOMFindMove node output terminal.
For more information about the schema, see DICOM message schema.
DICOM transactions
The DICOMFindMove node processing runs within the active transaction for the thread that is processing the DICOM image. If an error occurs, the DICOMFindMove node produces an error. Depending on the exception handling logic in the containing message flow, the error might cause the current transaction to be rolled back.

Query roots

The DICOM standard defines two types of query that are known as roots. These roots, patient and study, are used by the DICOMFindMove node to identify and retrieve data.

The patient root allows the following levels of query.
  • The patient level query is used to query an SCP for patient information. The patient level query has a set of attributes that can be used in the query, such as patient name, patient sex, and birth date.
  • The study level query is used to query an SCP for the studies for a specified patient. The study level query must include the patient ID attribute and zero or more optional attributes to further refine the search, such as the study date.
  • The series level query is used to query an SCP for the series within a specific study. The series level query must include the study UID and zero or more optional attributes to further refine the search, such as the modality.
  • The image level query is used to query an SCP for specific images in a series. An image level query must include the series UID.
The study root is similar to the patient root but has no patient level query. The study root allows the following levels of query.
  • The study level query is used to query an SCP for studies for a specified patient. There are no mandatory attributes but there is a large set of optional attributes that includes study date, study time, patient name, patient ID, and patient sex.
    Note: This study level query can be considered as a merging of the study and patient level queries from the patient root. You can use the study level query to search for all the studies for a patient given some basic search criteria, for example, patient name and study date. Using the patient root, you require two separate queries to achieve the same result. The first query is a patient level query to find a patient ID, the second query is a study level query to find the studies for that patient.
  • The series level query is used to query an SCP for the series within a specific study. The series level query must include the study UID and zero or more optional attributes to further refine the search, such as the modality.
  • The image level query is used to query for specific images in a series. An image level query must include the series UID.

For each root and level combination, the DICOMFindMove node defines the supported search attributes and a minimum set of attributes that the SCP should return. For information about the supported attributes, see Patient query root and Study query root.

The returned attributes are propagated by the node in the results messages from the output terminal. A query can return many results but these results are propagated as a single results message from the DICOMFindMove node. Vendors can support additional attributes to use as search criteria in the XML query message. The DICOMFindMove node allows these additional attributes to be configured in the XML query message, but they are not documented by the node (because they are vendor-specific). The DICOM standard requires that all the search attributes that are provided are also returned in responses. For information about the schema for the query and response messages, see, DICOM message schema.

The following is an example of a DICOMFindMove node query message that includes the move destination AET in the XML message.
<DICOM:FindMove xmins:DICOM="http://com.ibm.healthcare/DICOM">
  <QueryRoot>STUDY</QueryRoot>
  <QueryLevel>STUDY</Querylevel>
  <MoveDestination>BROKERAE</MoveDestination>
  <OperationPriority>NORMAL</OperationPriority>
  <Match>
    <Attribute Tag="PatientName">FEROVIX</Attribute>
    <Attribute Tag="AccessionNumber">1210490</Attribute>
  </Match>
  <Return>
  </Return>
</DICOM:FindMove>
The following is an example of a results message returned to the DICOMFindMove node. For details of the DICOM tags, see: DICOM Tags.
<DICOM:Results xmins:DICOM="http://com.ibm.healthcare/DICOM">
  <DICOM>
    <Attribute Tag="00080005"VR="CS">ISO_IR 100</Attribute>
    <Attribute Tag="00080016"VR="UI">1.2.840.10008.5.1.4.1.1.2</Attribute>
    <Attribute Tag="00080018"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093016410718700003864</Attribute>
    <Attribute Tag="00080052"VR="CS">IMAGE</Attribute>
    <Attribute Tag="00080054"VR="AE">PACS</Attribute>
    <Attribute Tag="00080056"VR="CS">ONLINE</Attribute>
    <Attribute Tag="0020000D"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093013443132800000021</Attribute>
    <Attribute Tag="0020000E"VR="UI">1.3.12.2.1107.5.1.4.54203.30000004093016410718700003676</Attribute>
    <Attribute Tag="00200013"VR="IS">188</Attribute>
    <Attribute Tag="00880130"VR="SH"/>
    <Attribute Tag="00880140"VR="UI"/>
    <MoveResults>
      <Completed>1</Completed>
      <Failed>0</Failed>
      <Warnings>0</Warnings>
      <Status>0</Status>
      <ErrorID>0</ErrorID>
      <ErrorComment/>
    </MoveResults>
    </DICOM>
</DICOM:Results>

Activity log entries

The following table details the activity log entries that are written by the DICOMFindMove node, where the following names are used in the examples:
  • BROKERAE is the name of the sending application entity.
  • REMOTEAE1 is the name of the remote application entity to which queries are sent.
  • REMOTEAE2 is the name of the application entity to which the DICOM images are copied.
  • hostname:11112 is the host name and port number of the remote application entity to which queries are sent.
Condition Description Type Example Recommendations
Start query retrieve A DICOM query is being prepared for sending to a remote application entity.
Note: A DICOM query command is known in DICOM as a C-FIND command.
Information BIP12068 Starting DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) No action is required
End query retrieve The DICOM query (C-FIND command) completed and any results are ready for processing. The result messages are converted into XML and then propagated to the containing message flow. Information BIP12068 Finished DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) No action is required
Query retrieve failed The DICOM query failed (C-FIND command). An error is produced by the DICOMFindMove node. Error BIP12070 Failed DICOM C-FIND operation (BROKERAE, REMOTEAE1, hostname:11112) Check network connectivity between the broker and the remote SCP.

Check that the query message is correct according to the study root and level.

Check that the query message contains the requisite key fields for the specified query root and level.

Check that the application entity names and port numbers exactly match with the remote SCP.

Check that the remote SCP is online and ready to accept connections and data transfers.

Check the exception details for more information about the error.

Start move A DICOM image is being copied to a destination application entity.
Note: This operation is known in DICOM as a C-MOVE command.
Information BIP12068 Starting DICOM C-Move operation(BROKERAE, REMOTEAE1, REMOTEAE2, 1, 5)

where:

1 is the index of the current DICOM image.

5 is the total number of DICOM images to be moved.

No action is required
End move A DICOM C-MOVE command completed successfully.
Note: If the destination of the C-MOVE is a broker, this activity log entry does not guarantee that the DICOM images were processed.
Information BIP12068 Finished DICOM C-Move operation(BROKERAE, REMOTEAE1, REMOTEAE2, 1, 5)

where:

1 is the index of the current DICOM image.

5 is the total number of DICOM images to be moved.

No action is required
Move failed A DICOM move (C-MOVE command) failed. An error is produced by the DICOMFindMove node. Error BIP12070 Warnings or failures reported from DICOM C-MOVE operation (BROKERAE,REMOTEAE1,REMOTEAE2,hostname:11112) Check network connectivity between the broker and the remote SCP.

Check that the move destination is valid and configured on the remote SCP.

Check that the data that is being moved can be accepted by the move destination SCP.

Check that the query message is correct according to the study root and level.

Check that the query message contains the required key fields for the specified query root and level.

Check that the application entity names and port numbers exactly match with the remote SCP.

Check that the remote SCP is online and ready to accept connections and data transfers.

Check the exception details for more information about the error.

Configuring the DICOMFindMove node

When you have added an instance of a DICOMFindMove node into a message flow, you can configure it.

All mandatory properties for which you must enter a value (properties that do not have a default value defined) are marked with an asterisk.

Terminals and properties

The DICOMFindMove node terminals are described in the following table.
Terminal Description
In The input terminal that accepts a message for processing by the node.
Out The output terminal to which a results message is routed if a query is successful.
No match The output terminal to which a results message is routed if a query is successful but no results are returned. The message that is propagated from this terminal is a regular results message but with no DICOM results elements contained in it.

The following tables describe the node properties. The column headed M indicates whether the property is mandatory (marked with an asterisk if you must enter a value when no default is defined); the column headed C indicates whether the property is configurable (you can change the value when you add the message flow to the broker archive (BAR) file to deploy it).

The Description properties for the DICOMFindMove node are described in the following table.
Property M C Default Description
Node name Yes No DICOMFindMove The name of the node.
Short description No No   A brief description of the node.
Long description No No   Text that describes the purpose of the node in the message flow.
The Basic properties for the DICOMFindMove node are described in the following table.
Property M C Default Description
Connection details Yes Yes localhost:2222 The host name and port for the application entity SCP to which the node connects.
Application entity title (AET) Yes Yes BROKERAE The name for this DICOM SCU endpoint. A text string of up to 16 characters that allows application entities to be identified when they connect.
Remote application entity title (AET) Yes Yes REMOTEAE The name of the DICOM SCP endpoint to which the node connects and sends queries.
The Advanced properties for the DICOMFindMove node are described in the following table.
Property M C Default Description
Cancel after this many responses No Yes 99 The node stops receiving results after this many response messages have been received. This setting prevents large queries from monopolizing the SCP.
Connection timeout (seconds) Yes Yes 60 The length of time that the node waits for a connection to be established with the SCP.
Offer only implicit VR little endian transfer syntax No Yes Not selected Specifies whether the node should connect to the SCP by using the DICOM default of implicit VR little endian encoding.
Operation priority Yes Yes NORMAL The priority for the transfer of the image to the SCP. It is not mandatory that the receiving application acts on this priority.
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 2011, 2014Copyright IBM Corporation 2011, 2014.

        
        Last updated
        
        Last updated : 2015-12-07 16:17:40


Reference topicReference topic | Version 3.0.0.1 | ha05030