# RelationDefinitionType (Complex Type)

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

Definition of a single (custom) relation.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
ref | property QName | [1,1] | Relations identifier (QName)
description | property string | [0,1] | Free-form description of relation purpose.
display | container DisplayType | [0,1] | Display properties of the relation.
category | property AreaCategoryType | [0,-1] | Specifies category or "area" for the relation.
defaultFor | property RelationKindType | [0,1] | If this relation is a default for a relation kind, specify the kind here.
kind | property RelationKindType | [0,-1] | Kind(s) of which this relation is.
processedOnLogin | property boolean | [0,1] | Whether this relation is processed during login.
processedOnRecompute | property boolean | [0,1] | Whether this relation is (by default) processed during recomputation.
storedIntoParentOrgRef | property boolean | [0,1] | Whether this relation is stored into parentOrgRef item.
automaticallyMatched | property boolean | [0,1] | Whether this relation is automatically matched by order constraints (without the need to explicitly list them).
staticallyDefined | property boolean | [0,1] | Whether this relation was statically defined in midPoint code.

- ### Items

  - #### ref

    Flags: RAM,runtime

    Multiplicity: [1,1]

    Relations identifier (QName)

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Free-form description of relation purpose. This field can be used as a comment.

  - #### display

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display properties of the relation. It is used to display the relation in drop-down lists, buttons, etc.. Only label is used now. E.g. the CSS properties are ignored.

  - #### category

    Flags: RAM,runtime,AVals:6

    Multiplicity: [0,-1]

    Specifies category or "area" for the relation. This may indicate that the relation is used for identity governance, organizational management and so on. The category is used to display the relations in appropriate parts of user interface.

  - #### defaultFor

    Flags: RAM,runtime,AVals:7

    Multiplicity: [0,1]

    If this relation is a default for a relation kind, specify the kind here.

  - #### kind

    Flags: RAM,runtime,AVals:7

    Multiplicity: [0,-1]

    Kind(s) of which this relation is. A value of "defaultFor", if present, is automatically considered to be a kind for this relation, so it is not necessary to list it here.

  - #### processedOnLogin

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Whether this relation is processed during login. The default value is true for member, meta and delegation kinds, false otherwise. EXPERIMENTAL.

  - #### processedOnRecompute

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Whether this relation is (by default) processed during recomputation. The default value is true for member, meta, manager and delegation kinds, false otherwise. EXPERIMENTAL.

  - #### storedIntoParentOrgRef

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Whether this relation is stored into parentOrgRef item. The default value is true for member kind, false otherwise. EXPERIMENTAL.

  - #### automaticallyMatched

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Whether this relation is automatically matched by order constraints (without the need to explicitly list them). The default value is true for member, meta and delegation kinds, false otherwise. EXPERIMENTAL.

  - #### staticallyDefined

    Flags: RAM,runtime,oper

    Multiplicity: [0,1]

    Whether this relation was statically defined in midPoint code. Do not set this flag explicitly, it is filled-in when relations are parsed.