# PersonaConstructionType (Complex Type)

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

Supertype: AbstractConstructionType
Persona construction. This structure defines how a persona (e.g. virtual identity) should be constructed.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
$itemDefinition.Name.LocalPart | property string | [0,1] |
$itemDefinition.Name.LocalPart | property ConstructionStrengthType | [0,1] | Strength of the construction defines how aggressively will the construction be applied.
$itemDefinition.Name.LocalPart | property QName | [1,1] | Object type of the target persona (e.
$itemDefinition.Name.LocalPart | property string | [1,-1] | Object subtype of the target persona.
$itemDefinition.Name.LocalPart | reference ObjectReferenceType | [0,1] | Reference to the object template that will be used to map values from the source object (e.

- ### Items

  - #### $itemDefinition.Name.LocalPart

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### $itemDefinition.Name.LocalPart

    Flags: RAM,runtime,AVals:2

    Multiplicity: [0,1]

    Strength of the construction defines how aggressively will the construction be applied. Strong constructions are applied all the time (relative changes, reconciliation, ...). Weak constructions are applied only if there is another strong construction.

  - #### $itemDefinition.Name.LocalPart

    Flags: RAM,runtime

    Multiplicity: [1,1]

    Object type of the target persona (e.g. UserType).

  - #### $itemDefinition.Name.LocalPart

    Flags: RAM,runtime

    Multiplicity: [1,-1]

    Object subtype of the target persona. Constructions with the same type and subtype configuration are interpreted as if they describe the same persona.

  - #### $itemDefinition.Name.LocalPart

    Flags: RAM

    Multiplicity: [0,1]

    Reference to the object template that will be used to map values from the source object (e.g. physical user) to the persona (e.g. virtual identity user). Unlike ordinary object template that has the same object as input and output, this object mapping will have one object as an input and the other as an output.