De-Identifying Data

Top  Previous  Next

"De-identifying Utility" can be used to "de-identify" X12 HIPAA transactions. You can replace Private Medical Information (PMI) with random numbers and names. This should facilitate the testing of the HIPAA transactions without compromising individuals' privacy. The software is free for all users. Read more on

It is your responsibility to make sure the configuration file meets your de-identification requirements.

1.Go to Help arrow De-identifying Utility in the main menu.

The "De-identify Utility" menu item

2.Look through the information on the Introduction screen. Optionally check the "Do not show this message again" option. Click OK.

The introductory window

3. Familiarize yourself with the information. Click OK.

The information window

4.Specify the following:
File to de-identify - Click on "Dots" button to browse for a resource HIPAA file on your local PC.
Save de-identified file to - Click on "Dots" button to select a destination file on your local PC.

The "X12 De-Identification Utility" window

5. Click on the "De-identify now" button to process the file. As the result, you will receive a sucess message like this, click OK.

The "De-Identification Result" popup

You may be informed about error/notification messages generated by the utility. Click "Yes" to access them.

The "De-Identification Information" popup

Changing Configuration

To change the De-identifying Utility configuration, click on the "Configuration" button.

The "Setting" button on the utility window

Click on "Edit" to open a configuration file.

The "Edit" button

This configuration file has a lot more than what you need, and in most cases all you have to do is remove the "#" at the beginning of a line in order to put that line into effect.  At first time, only patient and subscriber information is de-identified, and provider information is left intact. That is easily changed by removing the "#" at the beginning of some of the lines.

The configuration file

The lines have two parts separated by one or more spaces (or tabs):

The first part is the "tag" for the segment to replace or de-identify.
The second part is the replacement data.

In the replacement data, any "empty" data element will indicate that the data is not to be replaced and the original data must remain intact. Otherwise, if there is replacement data in that element, the replacement data will be used instead of the original, and if the replacement data is a single tilde "~" then the element will be blanked out. Blanking out with tildes should rarely be used, as it distorts the original data.

If the original did not have data in an element, the output will not have data in that element even if the replacement data exists.

If the replacement data starts with "?" then the replacement only takes place if there was no data for that element.  If there was any data in it, the replacement does not take place.

If the replacement data starts with "+" then the replacement takes place every time, even if there was no data for that element.

The configuration file accepts only "*" as the element delimiter, and does not use segment terminators.  Composite data elements are replaced as a whole at this time, and individual components of a composite are not replaceable at this time. The BIN segment is not handled yet. Even though the configuration file only accepts the "*" as the delimiter, the data itself may have any valid X12 delimiter.