US Veterans Health Administration FHIR Map Set Implementation Guide
1.3.1 - 250401 United States of America flag

Publication Build: This will be filled in by the publication tooling

Profile Design

These maps are published as entries in the StructureDefinition mapping property, so they are Profiles on existing assets. We considered two other options for documenting maps in FHIR IGs.

  1. Creating StructureMap resources to map elements from one object to another. StructureMap supports the transform operation, so this was an appealing possibility. However, extant implementations of that operation presume that both source and target are addressable by FHIRPath. If a standard transformation of Fileman names to FHIRPath can be adopted, this would be an optimal solution.
  2. Creating ConceptMap resources to map elements from one object to another. ConceptMap is designed to map concepts (terms), not elements, but the V2-to-FHIR program has extended this resource to support structural mappings. The more predictable structure of V2 assets makes this a bit easier to do. We also were unclear on the value of this approach, which would require more effort than the .mapping approach. Where they exist, our profiles extend US Core R5 profiles, which in turn extend FHIR Core R4 resources. Where no US Core profile is provided, we profile the core FHIR resources. This results in a 2- or 3-level inheritance structure.

The Patient profile illustrates a simple case:

simple inheritance

In some cases, US Core has provided multiple profiles on a single resource. In these cases, we follow the US Core lead:

complex inheritance

In this case, US Core provides a profile for persistent or chronic problems you might find on a problem list as well as a profile for recording encounter diagnoses. VistA also persists these facts in different ways, so the profiles work well.

In other cases, the VistA data is far more complex than the profile assets provided by US Core. In these cases, we may publish several profiles on a single US Core profile, often with intermediate “abstract” profiles. Lab is one example of this (figure for illustrative purposes is not complete):

very complex inheritance

These profiles also instantiate other kinds of relationships via references. These relationships are illustrated on the respective profile pages.