It is recommended you only run mapping analyses in a Development environment and save the associated mapping projects in an RLC for importing into a Production environment.

The Message Analyzer is used to analyze sample messages associated with a mapping project, input messages and corresponding output messages that have been transformed by a system, in order to obtain the rules that map the input messages to output messages. 

When you have created a new mapping project, you can select the source and target directories containing a set of input and output messages, respectively. The Message Analyzer is by default configured to match source and target messages using the Control ID (MSH.10), but you can use other fields to perform the matching. A field in the source message can be matched to a different field in the target message. If you define more than one matching criterion, they all are required to match.

After setting the message directories and match criteria, you can initiate the message analysis. If an analysis has been previously completed, the existing messages are cleared before the new messages are analyzed. You will be asked to confirm the clearing of the old message analysis in this case.

The overall analysis process consists of the following steps:

  1. Preparing – compressing and copying the messages to the engine.
  2. Parsing – Parsing each message at the composite level into a database.
  3. Analyzing – Matching the messages using message identifiers to create matched pairs, and using the matched message pairs to generate the mapping rules that define the mapping across source and target message sets.

Progress of the process is displayed for each stage in the progress indicator. As this process could take some time to perform, you can cancel it at any time.

For composites in sample messages containing large values, the message analysis performs mapping on the basis of the first 400 characters only. In general, however, the larger the number or size of sample messages, the longer it may take the Message Analyzer to complete an analysis.

When the analysis has completed, the Message Analyzer displays the counts of matched messages and fields. You are notified if unmatched messages are present with a message box. If you elect to continue, these messages are ignored by the subsequent analysis. If there are a large number or no matches were possible, you will need to review the supplied messages or the matching criteria. The field matching information gives you an indication of how many fields could be matched to other fields (the same field or a different one) and constant values.

The time the analysis starts and finishes is recorded in the audit log. 

You can set limits on the number and size of messages that the Message Analyzer can analyze, as well as the number of concurrent analyses it can run. Refer to Configuring the Message Analyzer for details.

The Message Analyzer contains the following editable fields:

Field Description
Source directory The directory containing the sample source (input) HL7v2 messages to compare.
Target directory The directory containing the sample target (output) HL7v2 messages to compare.
Fields to match messages on The source and target fields used to match the messages on. By default, the Message Control ID (MSH.10.1) is used.

You can perform the following actions through the Message Analyzer:

Action Description
Start Initiate the message analysis.
View Messages

Launch the Messages window that displays the matched messages and the field differences between them. The messages are categorized across three tabs as: matched message pairs, unmatched source messages, and unmatched target messages. Selecting a message in any of these lists displays the message, or a message diff in the case of matched message pairs.

Configuring the Message Analyzer

The Message Analyzer can be configured through the following configuration properties in the rhapsody.properties file:

Property
Default Value
Description
IntelligentMapperService.NumOfConcurrentAnalysis 5

Enables you to set the maximum number of mapping project analysis sessions that can be run concurrently.

Setting the property to a value of 0 disables the analysis. The upper limit for the maximum number of concurrent analysis sessions is 50. Any value greater than 50 is interpreted as 50.

IntelligentMapperService.MaxNumberOfMessagesPerAnalysis 2000

Enables you to set the maximum number of source and target messages allowed per mapping project analysis.

The lower limit for the maximum number of messages is 2. Any value less than 2 is replaced by the value 2.

IntelligentMapperService.MaxMessageSizeDuringAnalysis

50 Enables you to set the maximum size (in kB) for messages permissible for a mapping project analysis.

If you attempt to analyze messages that violate the thresholds set through the configuration properties, the Message Analyzer will not perform the analysis.

Running a Message Analysis

To analyze messages:

  1. Set or check the configuration properties for the Message Analyzer. Refer to Configuring the Message Analyzer for details.
  2. From the Mapping Project Editor, select the Analyze Messages button to display the Message Analyzer.
  3. Enter the following information:
    • Select the directories that contain the source and target sample messages that you want to analyze.

      Ensure your sample HL7v2 messages are in UTF-8 format, the only format supported by the Message Analyzer. Also, ensure your sample messages conform to the property parameters you have configured for the Message Analyzer.

    • Enter the source and target fields you want to match the messages on.

  4. Select the Start button to initiate the message analysis.
  5. When the analysis is complete, the analysis results summary is displayed:

    Field Description
    Matched The number of matched message pairs found.
    Unmatched The number of unmatched message pairs found.
    Fields Fully Mapped

    The percentage of mapping rules that are fully mapped, that is mapping rules that map across 100% of set of matched message pairs.

    Fields Partially Mapped

    The percentage of mapping rules that are partially mapped, that is mapping rules that map across more than 10% and less than 100% of the set of matched message pairs.

    Fields Not Mapped

    The percentage of mapping rules that are fully mapped, that is mapping rules that map across 10% or less of the set of matched message pairs.

    Percentages are rounded up or down to the nearest integer, and therefore may not represent the exact number of mapping rules.

  6. Select the View Message link if you want to view the differences between matched messages. Refer to Viewing Messages for details.
  7. Select:
    • The OK button to save your analysis results and return to the Mapping Project Editor.
    • The Cancel button to discard your analysis results and return to the Mapping Project Editor.