# ObjectReferenceType (Complex Type)

### Namespace: http://midpoint.evolveum.com/xml/ns/public/common/common-3

Reference to an object. It contains OID of the object that it refers to.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
description | property string | [0,1] | Free-form textual description of the object.
filter | property SearchFilterType | [0,1] | Filter that can be used to dynamically lookup the reference OID e.
resolutionTime | property EvaluationTimeType | [0,1] | Definition of the "time" when the reference will be resolved.
targetName | property PolyStringType | [0,1] | Cached name of the target object.

- ### Items

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Free-form textual description of the object. It is supposed to describe the object or a construct that it is attached to.

    Anything that the system administrator wants may be here. The system will not interpret the information except for displaying it and allow user to edit it.

  - #### filter

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Filter that can be used to dynamically lookup the reference OID e.g. during imports. It must not be used for normal operations. The filter may be stored in the repository to avoid data loss. But even if it is stored it will not be used beyond initial import or unless explicitly requested (e.g. by setting resolutionTime).

    Note: The filter will NOT be used if the OID in the reference is set. The OID always takes precedence.

  - #### resolutionTime

    Flags: RAM,runtime,AVals:2

    Multiplicity: [0,1]

    Definition of the "time" when the reference will be resolved. Resolving the reference means using the filter to get object(s) or OID(s).

    Import-time resolution means that the reference will be resolved once when the file is imported. OID will be recorded in the reference and then only the OID will be used to follow the reference. This is a very efficient method and it is the default.

    Run-time resolution means that the reference will be resolved every time that the reference is evaluated. This is less efficient but it provides great flexibility as the filter may contain expressions and therefore the reference target may dynamically change.

  - #### targetName

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Cached name of the target object. This is a ephemeral value. It is not stored in the repository. It may be computed at object retrieval time or it may not be present at all. This is NOT an authoritative information. Setting it or changing it will not influence the reference meaning. OID is the only authoritative linking mechanism.