{"id":18173,"date":"2024-12-19T12:27:39","date_gmt":"2024-12-19T17:27:39","guid":{"rendered":"https:\/\/www.iri.com\/blog\/?p=18173"},"modified":"2025-12-29T15:35:06","modified_gmt":"2025-12-29T20:35:06","slug":"masking-phi-in-fhir-edi-files-with-darkshield","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/","title":{"rendered":"Masking PHI in FHIR EDI Files with DarkShield"},"content":{"rendered":"<h5><b>Introduction<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The<\/span><a href=\"https:\/\/www.iri.com\/products\/darkshield\"> <span style=\"font-weight: 400;\">IRI DarkShield<\/span><\/a><span style=\"font-weight: 400;\"> data masking tool includes fit-for-purpose wizards in its<\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\"> <span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> GUI to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This article focuses on a wizard that can discover and de-identify PHI in healthcare documents in FHIR (Fast Healthcare Interoperability Resources) format. See<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-hl7-edi-files-with-darkshield\/\"> <span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\"> related to <\/span><i><span style=\"font-weight: 400;\">HL7<\/span><\/i><span style=\"font-weight: 400;\"> files, or <\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/\"><span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\"> related to <\/span><i><span style=\"font-weight: 400;\">X12 <\/span><\/i><span style=\"font-weight: 400;\">files if you need to find and mask PHI in those EDI formats.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Though not discussed in this article, DarkShield also includes wizards for other data sources, too, like the<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-files-with-the-darkshield-files-wizard\/\"> <i><span style=\"font-weight: 400;\">New File Search\/Masking Job<\/span><\/i><\/a><span style=\"font-weight: 400;\"> \u2026 wizard for sensitive data in many other file, document, and image formats; the<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-nosql-dbs-with-the-darkshield-gui\/\"> <i><span style=\"font-weight: 400;\">New NoSQL DB Search\/Masking Job\u2026<\/span><\/i><\/a><span style=\"font-weight: 400;\"> for popular NoSQL databases; and, the<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/finding-and-masking-pii-in-relational-databases-with-the-darkshield-rdb-wizard\/\"> <i><span style=\"font-weight: 400;\">New Relational DB Search\/Masking Job\u2026<\/span><\/i><\/a><span style=\"font-weight: 400;\"> wizard for RDB schemas.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone  wp-image-18975\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-731x1024.png\" alt=\"\" width=\"490\" height=\"687\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6.png 731w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-214x300.png 214w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-768x1075.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-1097x1536.png 1097w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Architecture-V6-1463x2048.png 1463w\" sizes=\"(max-width: 490px) 100vw, 490px\" \/><\/p>\n<h5><b>What the DarkShield Healthcare Wizard Does<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">The \u201c<\/span><i><span style=\"font-weight: 400;\">New Healthcare Search\/Masking Job \u2026<\/span><\/i><span style=\"font-weight: 400;\">\u201d wizard in the IRI Workbench GUI for DarkShield creates a DarkShield Job (.dsc file) with the Search and Mask Contexts applicable to your job.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Search Contexts contain instructions on how to search for PII in its source. Mask Contexts contain instructions on masking the PII found during the search, and how to access the target where the masked version of data will be sent.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The searching and masking of data in FHIR documents is based on Data Classes you pre-define and store in an<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\"> <span style=\"font-weight: 400;\">IRI Data Class and Rule Library<\/span><\/a><span style=\"font-weight: 400;\">, or create directly from this wizard. Each Data Class contains one or more search methods called Search Matchers to find PII\/PHI values.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">FHIR documents specifically use search matchers based on the location (path metadata) matchers, but you can also combine those with content-based data matchers as well to increase your search range (and time). For more information on the various search methods available, read about<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/location-matchers\/\"> <span style=\"font-weight: 400;\">Location Matchers<\/span><\/a><span style=\"font-weight: 400;\"> and<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/data-matchers\/\"> <span style=\"font-weight: 400;\">Data Matchers<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">While DarkShield previously supported FHIR documents, this wizard provides a user-friendly front-end to configure the jobs.\u00a0<\/span><\/p>\n<h5><b>Prerequisites<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">You may need to update your DarkShield API and Workbench IDE; see<\/span><a href=\"https:\/\/www.youtube.com\/watch?v=kP-UYws5k6s\"> <span style=\"font-weight: 400;\">this YouTube video<\/span><\/a><span style=\"font-weight: 400;\"> for instructions, and email darkshield@iri.com if you need help or have any questions. Before launching the DarkShield Healthcare wizard, ensure these preliminary steps are completed:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18178\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Healthcare-wizard-300x243.png\" alt=\"\" width=\"597\" height=\"483\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Healthcare-wizard-300x243.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Healthcare-wizard.png 768w\" sizes=\"(max-width: 597px) 100vw, 597px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">1.\u00a0 First, verify that the DarkShield API distribution directory is specified in the IRI Workbench <\/span> <i><span style=\"font-weight: 400;\">Preferences &gt; IRI &gt; DarkShield<\/span><\/i><span style=\"font-weight: 400;\">. From here, you can configure DarkShield GUI and API preferences, including the host, port, and directory holding the DarkShield API. If the DarkShield API distribution (Plankton) is empty or if you are using a different distribution, you will need to manually update the specified folder to reflect the location of the DarkShield API.<\/span><\/p>\n<p>2.\u00a0 Second, all DarkShield Wizards require a project possessing an IRI Data Class and Rule Library. The library can be empty, as this wizard can create data classes and rules for you. Learn about data classes and rules from<a href=\"https:\/\/www.iri.com\/blog\/data-protection\/location-matchers\/\"> this article<\/a>.<\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18179\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/IRI-project-with-IRI-data-class-and-rule-library-300x55.png\" alt=\"\" width=\"611\" height=\"112\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/IRI-project-with-IRI-data-class-and-rule-library-300x55.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/IRI-project-with-IRI-data-class-and-rule-library.png 687w\" sizes=\"(max-width: 611px) 100vw, 611px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">IRI Project Containing an IRI Data Class and Rule Library<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">3.\u00a0 Finally, verify that the Plankton (DarkShield API) server is running. The DarkShield API Status view (bottom of the screen) displays whether the API server is running.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18180\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/The-DarkShield-API-Status-view-300x145.png\" alt=\"\" width=\"463\" height=\"224\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/The-DarkShield-API-Status-view-300x145.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/The-DarkShield-API-Status-view.png 557w\" sizes=\"(max-width: 463px) 100vw, 463px\" \/><\/p>\n<h5><b>Using the Wizard<\/b><\/h5>\n<p><span style=\"font-weight: 400;\">To access the wizard, navigate to the DarkShield menu dropdown from the top toolbar menu in<\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\"> <span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> and choose \u2018New Healthcare Search\/Masking Job\u2026\u2019.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-18181\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-dropdown-menu-300x200.png\" alt=\"\" width=\"300\" height=\"200\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-dropdown-menu-300x200.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-dropdown-menu.png 313w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">This action opens the first page, where you will specify the source type, in this case, FHIR.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18182\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-window-300x258.png\" alt=\"\" width=\"411\" height=\"353\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-window-300x258.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-window-350x300.png 350w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-window.png 516w\" sizes=\"(max-width: 411px) 100vw, 411px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">After selecting the source type, click Next. The next page will prompt you to specify the name and location of the DarkShield job you are building.\u00a0<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18184\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/specify-job-name-location-and-type-300x178.png\" alt=\"\" width=\"470\" height=\"279\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/specify-job-name-location-and-type-300x178.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/specify-job-name-location-and-type.png 635w\" sizes=\"(max-width: 470px) 100vw, 470px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">You also have the option to use previously created Data Classes or Data Class Groups. If you do, this streamlines the process of setting up the job without more steps because you will be using data classes that were defined or modified in the library or previous use of this wizard.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If this is your first time defining a DarkShield job for FHIR however, we recommend you to not use this option. That is because the next pages of the wizard will take you through the very specific types of FHIR paths you should classify.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">After the setup page is the PII General and Advanced Selection Page. Here, predefined \u201cgroupings\u201d<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-x12-edi-files-with-darkshield\/#easy-footnote-bottom-1-17814\"> <span style=\"font-weight: 400;\">1<\/span><\/a><span style=\"font-weight: 400;\"> of common Personally Identifiable Information (PII) or Protected Health Information (PHI) types found within healthcare documents are presented.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It\u2019s important to note that while these groupings cover many PII instances, they may not encompass all of them within a document. Therefore, you should carefully review all information during job creation to ensure the accuracy of your data discovery and de-identification results.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">On this page, we can select these groupings for easier searching and masking of PII \/ PHI:<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18185\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/new-FHIR-darkshield-job-300x197.png\" alt=\"\" width=\"489\" height=\"321\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/new-FHIR-darkshield-job-300x197.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/new-FHIR-darkshield-job.png 631w\" sizes=\"(max-width: 489px) 100vw, 489px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The \u201cAdvanced\u201d section of the wizard gives you more granular control over specific path matchers. For this example, we will be using our pre-defined groupings of \u201cName\u201d, \u201cPhone Number\u201d, and \u201cGender\u201d.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18186\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/pii-selection-287x300.png\" alt=\"\" width=\"480\" height=\"502\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/pii-selection-287x300.png 287w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/pii-selection.png 634w\" sizes=\"(max-width: 480px) 100vw, 480px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The next wizard page is the \u2018Rule Selection Wizard Page,\u2019 where you associate the information selected in previous wizard pages with masking rules. Note that any information lacking a rule will be skipped during the search and masking process.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">On this page, you\u2019ll find a dropdown menu for selecting groupings defined in an earlier wizard, including information from the advanced selections. Once you\u2019ve selected a grouping, you can apply a rule to it by selecting it from the \u201cSelect Rule\u201d dropdown and clicking on \u2018Add Group Rule.\u2019<\/span><\/p>\n<p><span style=\"font-weight: 400;\">There is also an optional dropdown menu called Type. This permits the application of a rule solely to the selected type within the grouping. At the moment, JSON is the only type available, but future FHIR wizard versions will support the new XML format, too.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Within the table, you can also click on, and directly modify each rule cell via a dropdown menu to select a rule for a specific item. This provides even more granular control of the masking job.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18187\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/masking-rule-selection-287x300.png\" alt=\"\" width=\"470\" height=\"492\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/masking-rule-selection-287x300.png 287w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/masking-rule-selection.png 631w\" sizes=\"(max-width: 470px) 100vw, 470px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The \u201cCreate Rule\u201d button allows you to create a rule directly from this wizard. For more information about creating a rule, or what the masking rules are, refer to<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\"> <span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Since this wizard uses Data Classes, you can use any predefined masking rules in this wizard. Subsequently, any additional Data Classes can also be used in the .dsc file, combining manual entries along with these automated ones.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The last two wizard pages are used to define or modify the locations of your unmasked file sources and masked targets, respectively. You can specify local PC folders, LAN file system paths, or cloud buckets.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">By default, each target file will have the same name as the source. If you specify more than one target, the masked files will be copied into every defined folder.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18188\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/data-sources-300x131.png\" alt=\"\" width=\"442\" height=\"193\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/data-sources-300x131.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/data-sources.png 632w\" sizes=\"(max-width: 442px) 100vw, 442px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">When you click Finish, a DarkShield job configuration (.dsc) file is created in the \u201cProject Explorer\u201d folder you specified on the first wizard page. New FHIR data class groups will also be created inside the \u201ciriLibrary.dcrlib\u201d in your project, which contains the data classes you just defined in the wizard.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18189\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/project-explored.png\" alt=\"\" width=\"275\" height=\"158\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Within these Data Classes, every detail can be altered without the need to revisit the wizard. This flexibility enables you to modify, add, or remove any Data Classes, significantly reducing setup time for future jobs, especially if requirements change.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18190\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/iriLIbrary-data-classes-rules-300x64.png\" alt=\"\" width=\"844\" height=\"180\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/iriLIbrary-data-classes-rules-300x64.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/iriLIbrary-data-classes-rules-1024x219.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/iriLIbrary-data-classes-rules-768x164.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/iriLIbrary-data-classes-rules.png 1191w\" sizes=\"(max-width: 844px) 100vw, 844px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Double-click on your .dsc file to see the \u2018DarkShield Job Details Page\u2019. Review the source, target, and data class information. It\u2019s important to note that any changes made to items in the .dcrlib file require selecting the \u2018Modify\u2019 button and completing the wizard to ensure those changes are reflected in the .dsc file.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18191\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Job-Details-Page-300x113.png\" alt=\"\" width=\"772\" height=\"291\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Job-Details-Page-300x113.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Job-Details-Page-1024x386.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Job-Details-Page-768x290.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/DarkShield-Job-Details-Page.png 1233w\" sizes=\"(max-width: 772px) 100vw, 772px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">To run your job, right-click on the .dsc file and select the type of job you want. In this case, I am choosing a combined search and masking job.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-18192\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-healthcare-jobs-300x293.png\" alt=\"\" width=\"548\" height=\"535\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-healthcare-jobs-300x293.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/darkshield-healthcare-jobs.png 727w\" sizes=\"(max-width: 548px) 100vw, 548px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Upon examining the sample FHIR source and target file below, we can see our net of groupings working its magic. With only a few clicks of our mouse, we were able to identify and mask common PII\/PHI types.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">One thing to mention is that process this works regardless of which document type is being used. Our groupings cover all available document types for FHIR, X12, and HL7, stemming directly from their documentation.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Another topic to consider is marking results, in this example, we only used Format-Preserving Encryption (<\/span><a href=\"https:\/\/www.iri.com\/solutions\/data-masking\/static-data-masking\/encrypt\/format-preserving-encryption\"><span style=\"font-weight: 400;\">FPE<\/span><\/a><span style=\"font-weight: 400;\">), however, many other data masking (and synthesis) functions are supported; see<\/span><a href=\"https:\/\/www.iri.com\/solutions\/data-masking\/static-data-masking\"> <span style=\"font-weight: 400;\">this page<\/span><\/a><span style=\"font-weight: 400;\"> and its links for details.<\/span><\/p>\n<p style=\"text-align: left;\"><b>FHIR SAMPLE 1 (Unmasked &gt; Masked)<\/b><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-18193 aligncenter\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-LEFT-300x111.png\" alt=\"\" width=\"752\" height=\"278\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-LEFT-300x111.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-LEFT-768x284.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-LEFT.png 893w\" sizes=\"(max-width: 752px) 100vw, 752px\" \/><\/p>\n<p style=\"text-align: left;\"><b>FHIR SAMPLE 2 (Unmasked &gt; Masked)<\/b><\/p>\n<p style=\"text-align: left;\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-18194 aligncenter\" src=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-RIGHT-300x117.png\" alt=\"\" width=\"805\" height=\"314\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-RIGHT-300x117.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-RIGHT-768x301.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/FHIR-SOURCE-RIGHT.png 925w\" sizes=\"(max-width: 805px) 100vw, 805px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">In addition to the masked files, an audit log file called<\/span><i><span style=\"font-weight: 400;\"> results.json<\/span><\/i><span style=\"font-weight: 400;\"> is generated. It details which PHI data classes matched on values in the FHIR file(s), and the corresponding rules used to mask them.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">At the moment, JSON is the only supported FHIR format; in future updates XML will be supported as well.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">It is also possible to generate aggregate visualization of the discovered PII and whether it was masked in built-in dashboard charts per<\/span><a href=\"https:\/\/www.iri.com\/blog\/data-protection\/darkshield-pii-discovery-masking-charts\/\"> <span style=\"font-weight: 400;\">this article<\/span><\/a><span style=\"font-weight: 400;\">. For help using this wizard to scan and\/or mask FHIR data \u2013 or data in any other source(s) \u2013 send an email to <\/span><a href=\"mailto:darkshield@iri.com\"><span style=\"font-weight: 400;\">darkshield@iri.com<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\n<section>\n<div class=\"container plain-width\">\n<div class=\"faq-section\">\n<h3>Frequently Asked Questions (FAQs)<\/h3>\n<div class=\"faq-item\">\n<div class=\"faq-question\">1. What is FHIR and how does IRI DarkShield help mask PHI in it? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">FHIR (which stands for Fast Healthcare Interoperability Resources) is a file format designed to advance beyond HL7 as a new data exchange standard. IRI DarkShield helps by protecting the sensitive data \u2013 mostly Protected Health Information (PHI) \u2013 in FHIR files. It works through a purpose-built healthcare <a href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\">EDI file masking wizard<\/a> in the IRI Workbench GUI to find and mask PHI in FHIR documents using predefined data classes, search matchers based on FHIR paths, and masking functions (rules) that you assign to those data classes.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">2. How does the Healthcare Search and Masking wizard work for FHIR? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">The wizard builds a DarkShield job file that contains Search Contexts and Mask Contexts. It guides you to choose PHI groupings, map them to masking rules, and define source and target locations so PHI is discovered and masked in one or more FHIR files.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">3. What search methods can DarkShield use to find PHI in FHIR? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">DarkShield primarily uses location matchers that target JSON paths defined by the FHIR spec. You can also add content-based matchers such as regular expressions, value lookups, or NER models to expand coverage when needed.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">4. How can I create or reuse PHI data classes for FHIR jobs? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">You can reuse existing data classes from the <a href=\"https:\/\/www.iri.com\/blog\/data-protection\/iri-data-classification\/\">IRI Data Class and Rule Library<\/a> or create new data classes in the FHIR data discovery and masking wizard. Each data class pairs specific FHIR paths with the masking rule you want applied to those values.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">5. What masking functions can I apply to PHI in FHIR? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">You can apply format-preserving encryption, pseudonymization, redaction, randomization, blurring, hashing, and other supported <a href=\"https:\/\/www.iri.com\/solutions\/data-masking\/static-data-masking\">static data masking methods<\/a>. Pick functions that meet your realism, reversibility, and compliance needs.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">6. How do I map PHI groupings to rules during setup? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">In the Rule Selection step, choose a grouping such as Name or Phone Number, then select a masking rule from the dropdown and add it. You can refine rule assignment per item for more granular control.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">7. How can I define source and target locations for FHIR masking jobs? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">In the last steps of the wizard, point to local folders, LAN paths, or cloud buckets for sources and one or more targets. By default, masked files keep the original names in your specified target directories.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">8. What file formats of FHIR does DarkShield support today? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">FHIR in JSON format is supported in the wizard today. Support for FHIR in XML format is planned for a future update.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">9. How do I run a combined search and masking job after configuration? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Right-click the generated .dsc file in IRI Workbench and choose to run a combined search and masking job. Ensure the DarkShield API server is running and reachable in your environment.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">10. What audit artifacts are produced for FHIR masking runs? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">DarkShield produces a results.json file that logs which PHI classes were found and which rules masked them. You can also view aggregate charts in a built-in dashboard for quick visual insight. <a href=\"https:\/\/www.iri.com\/products\/workbench\/darkshield-gui\/audit-logs\">This page<\/a> lists the current audit logs DarkShield jobs generate.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">11. How can I modify data classes or rules without rebuilding the job? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Open the iriLibrary.dcrlib in your project to adjust data classes or rules. Then use Modify in the job details page so those updates are reflected in the .dsc configuration.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">12. What prerequisites are required before using the Healthcare wizard? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Confirm that IRI Workbench is configured with the DarkShield API distribution path, that your project includes a Data Class and Rule Library, and that the DarkShield API server is running.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">13. How can I increase discovery accuracy for PHI in FHIR? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Combine location matchers with content matchers such as regex validators or lookups. Start with the predefined PHI groupings, validate results, then iterate by refining paths and rules.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">14. Can I schedule or automate FHIR masking operations? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">Yes. Export the job specs and run them from the DarkShield CLI or call the DarkShield API from your automation tools to schedule and trigger recurring or event-based masking workflows.<\/div>\n<\/div>\n<div class=\"faq-item\">\n<div class=\"faq-question\">15. What compliance outcomes can DarkShield support for FHIR data? <i class=\"faq-icon fa fa-plus\"><\/i><i class=\"faq-icon fa fa-minus\"><\/i><\/div>\n<div class=\"faq-answer\">DarkShield supports HIPAA-related de-identification or anonymization security rules through compliant data masking functions and produces audit logs for verification. It helps you protect PHI for analytics, testing, and sharing without exposing patient identities.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/section>\n","protected":false},"excerpt":{"rendered":"<p>Introduction The IRI DarkShield data masking tool includes fit-for-purpose wizards in its IRI Workbench GUI to search (classify) and mask (remediate) sensitive \u201ddark data\u201d (as defined by Gartner) in many semi, unstructured, and structured file, NoSQL, and relational database (RDB) sources.\u00a0 This article focuses on a wizard that can discover and de-identify PHI in healthcare<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\" title=\"Masking PHI in FHIR EDI Files with DarkShield\">Read More<\/a><\/div>\n","protected":false},"author":204,"featured_media":18202,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[8],"tags":[1981,1305,1979,1976,1982,1977,1978,1980,1879,1388,850,1983,1878,1306,1750],"class_list":["post-18173","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-protection","tag-darkshield-wizard","tag-data-masking-tools","tag-data-security-in-healthcare","tag-fhir-data-masking","tag-fhir-data-protection","tag-fhir-documents","tag-health-information-security","tag-healthcare-compliance","tag-healthcare-data-privacy","tag-iri-darkshield","tag-iri-workbench","tag-personal-health-information","tag-phi-de-identification","tag-pii-masking","tag-sensitive-data-protection"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Masking PHI in FHIR EDI Files with DarkShield - IRI<\/title>\n<meta name=\"description\" content=\"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Masking PHI in FHIR EDI Files with DarkShield\" \/>\n<meta property=\"og:description\" content=\"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2024-12-19T17:27:39+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-29T20:35:06+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1110\" \/>\n\t<meta property=\"og:image:height\" content=\"532\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Tylor Quinley\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@tylorq@iri.com\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Tylor Quinley\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\"},\"author\":{\"name\":\"Tylor Quinley\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1\"},\"headline\":\"Masking PHI in FHIR EDI Files with DarkShield\",\"datePublished\":\"2024-12-19T17:27:39+00:00\",\"dateModified\":\"2025-12-29T20:35:06+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\"},\"wordCount\":2232,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png\",\"keywords\":[\"DarkShield Wizard\",\"data masking tools\",\"Data Security in Healthcare\",\"FHIR Data Masking\",\"FHIR Data Protection\",\"FHIR Documents\",\"Health Information Security\",\"Healthcare Compliance\",\"Healthcare Data Privacy\",\"IRI DarkShield\",\"IRI Workbench\",\"Personal Health Information\",\"PHI De-identification\",\"pii masking\",\"sensitive data protection\"],\"articleSection\":[\"Data Masking\/Protection\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\",\"url\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\",\"name\":\"Masking PHI in FHIR EDI Files with DarkShield - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png\",\"datePublished\":\"2024-12-19T17:27:39+00:00\",\"dateModified\":\"2025-12-29T20:35:06+00:00\",\"description\":\"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png\",\"width\":1110,\"height\":532},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Masking PHI in FHIR EDI Files with DarkShield\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1\",\"name\":\"Tylor Quinley\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g\",\"caption\":\"Tylor Quinley\"},\"sameAs\":[\"https:\/\/www.iri.com\/blog\/wp-admin\",\"https:\/\/x.com\/tylorq@iri.com\"],\"url\":\"https:\/\/www.iri.com\/blog\/author\/tylorq\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Masking PHI in FHIR EDI Files with DarkShield - IRI","description":"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/","og_locale":"en_US","og_type":"article","og_title":"Masking PHI in FHIR EDI Files with DarkShield","og_description":"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.","og_url":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/","og_site_name":"IRI","article_published_time":"2024-12-19T17:27:39+00:00","article_modified_time":"2025-12-29T20:35:06+00:00","og_image":[{"width":1110,"height":532,"url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","type":"image\/png"}],"author":"Tylor Quinley","twitter_card":"summary_large_image","twitter_creator":"@tylorq@iri.com","twitter_misc":{"Written by":"Tylor Quinley","Est. reading time":"14 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/"},"author":{"name":"Tylor Quinley","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1"},"headline":"Masking PHI in FHIR EDI Files with DarkShield","datePublished":"2024-12-19T17:27:39+00:00","dateModified":"2025-12-29T20:35:06+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/"},"wordCount":2232,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","keywords":["DarkShield Wizard","data masking tools","Data Security in Healthcare","FHIR Data Masking","FHIR Data Protection","FHIR Documents","Health Information Security","Healthcare Compliance","Healthcare Data Privacy","IRI DarkShield","IRI Workbench","Personal Health Information","PHI De-identification","pii masking","sensitive data protection"],"articleSection":["Data Masking\/Protection"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/","url":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/","name":"Masking PHI in FHIR EDI Files with DarkShield - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","datePublished":"2024-12-19T17:27:39+00:00","dateModified":"2025-12-29T20:35:06+00:00","description":"Learn how to locate and de-identify PHI in FHIR EDI files using the healthcare data masking tool in IRI DarkShield, just as for HL7 and X12.","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","width":1110,"height":532},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/data-protection\/masking-phi-in-fhir-edi-files-with-darkshield\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Masking PHI in FHIR EDI Files with DarkShield"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/287497b6de7a30d7c674b81c7cbdbbb1","name":"Tylor Quinley","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/103619c915af89371c31a18efe3ece45?s=96&d=blank&r=g","caption":"Tylor Quinley"},"sameAs":["https:\/\/www.iri.com\/blog\/wp-admin","https:\/\/x.com\/tylorq@iri.com"],"url":"https:\/\/www.iri.com\/blog\/author\/tylorq\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2024\/12\/Masking-PHI-in-FHIR-with-DarkShield-Featured-image.png","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/18173"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/204"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=18173"}],"version-history":[{"count":14,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/18173\/revisions"}],"predecessor-version":[{"id":18976,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/18173\/revisions\/18976"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/18202"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=18173"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=18173"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=18173"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}