Establecimiento de identificadores de entidades de destino

En la línea 1 del ejemplo 13, al igual que en varios de los ejemplos anteriores, el elemento <target-entity> ha incluido un atributo de ID "AnnuityTarget". Aunque este atributo es opcional, es una buena práctica incluir un ID en todos los elementos <target-entity>. Esto permite que el motor de correlación de datos distinga entre varias correlaciones diferentes de la misma entidad con el mismo tipo de entidad de destino. Considere el ejemplo siguiente: la entidad Person del almacén de datos común tiene dos indicadores booleanos: isBlind y hasDisability. Ambos se correlacionan con el mismo tipo de entidad de destino, Disability, tal como se indica a continuación:

1  <map-entity source="Person">
1    <condition expression="Person.isBlind==true">
2      <target-entity
3        id="DisabilityBlind"
4        name="Disability"
5      >
6        <set-attribute
7          name="disabilityType"
8          value="DT1"
9        />
10     </target-entity>
11   </condition>
12   <!-- Crear un registro de discapacidad vacío. -->
13   <condition expression="Person.hasDisability==true">
14     <target-entity
15       id="DisabilityUnspecified"
16       name="Disability"
17     />
18   </condition>
19 </map-entity>

El primer destino de las líneas 1-11 garantiza que si un solicitante indica que es ciego se cree un registro de discapacidad del tipo ceguera. El segundo destino, líneas 13-18, comprueba el indicador hasDisability y, si está establecido en true, se crea un registro de discapacidad de tipo no especificado. Al asignar a las dos correlaciones un ID distinto, el motor de correlación puede diferenciar las dos correlaciones. Sin el ID, la segunda correlación no se procesará.