10.6.2. Source Reconciliation

OpenIDM starts reconciliation and LiveSync by reading a list of objects from the resource. For reconciliation, the list includes all objects available through the connector. For LiveSync, the list contains only changed objects. The connector can filter objects out of the list, too. You can filter objects out of the list by using the validSource property.

OpenIDM then iterates over the list, checking each entry against the validSource filter, classifying objects according to their situations as described in Section 10.6.1, “Synchronization Situations”. OpenIDM uses the list of links for the current mapping to classify objects. Finally, OpenIDM executes the action configured for the situation.

The following table shows how OpenIDM assigns the appropriate situation during source reconciliation, depending on whether a valid source exists (Source Qualifies), whether a link with the appropriate type exists in the repository (Link Exists), and how many target objects are found, either based on links or correlation results.

Table 10.1. Resolving Source Reconciliation Situations

Source Qualifies? Link Exists? Target Objects Found[a] Situation
Yes No Yes No 0 1 > 1
  X       X   TARGET_IGNORED
  X   X   X   SOURCE_MISSING
  X   X     X UNQUALIFIED
  X X   X     UNQUALIFIED
  X X     X   TARGET_IGNORED
  X X       X UNQUALIFIED
X     X X     ABSENT
X     X   X   FOUND
X     X     X AMBIGUOUS
X   X   X     MISSING
X   X     X   CONFIRMED

[a] If no link exists for the source object, then OpenIDM executes a correlation query. If no previous object is available, OpenIDM cannot correlate.