Similarities of input and output data
Frequently, your input and output data contain very similar information, but the data is arranged differently.
For example, you have a file of invoices from your company's internal application and you want to map it to a file of invoices to send to another company. The input and output invoices are really reflections of one another. The layout of an invoice in the application file may be different from the layout of an invoice in the output file. The important point is that you want to make an output invoice for each input invoice.
Or you may receive health claims in a standard format, and you want to map them to a different standard format. The input claims are embedded in a hierarchical layout where data is not repeated. The output claims may be arranged so that each claim has the same key data repeated: the provider, the patient, and so on. To make an output claim for each input claim, use a functional map. There is a one-to-one relationship between an input claim and an output claim.
A good indication of when to use a functional map is when there is a one-to-one relationship between a group in the input and a different group in the output.
As an example, you have a data source with three input records. A functional map provides a way to map one input record to one output record. The functional map defines the first input record that generates the first output record. Next, the second input record generates the second output record. The third input record generates the third output record. The result is three output records.