# SelfRegistrationPolicyType (Complex Type)

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

Supertype: AbstractRegistrationPolicyType
Structure that specifies policy for password management. It is in fact only a simple reference to a password policy.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
identifier | property string | [0,1] | GUI feature identifier.
description | property string | [0,1] | Free-form description (comment) intended for system administrator.
documentation | property string | [0,1] | Technical documentation for a particular object or construct.
display | container DisplayType | [0,1] | Display properties of the UI feature.
visibility | property UserInterfaceElementVisibilityType | [0,1] | Defines, whether this feature will be visible or it will be hidden.
displayOrder | property int | [0,1] | The content of this property specifies an order in which the user interface feature should be displayed relative to other similar features that are displayed together.
applicableForOperation | property OperationTypeType | [0,1] | Used to distinguish for which operations are the configuration applicable (and so visible) If nothing specified, configuration will be applicable for both add and modify operations (and visible for example for panel in details menu).
name | property string | [0,1] | Use UserInterfaceFeatureType.
initialLifecycleState | property string | [0,1] |
requiredLifecycleState | property string | [0,1] |
displayName | property string | [0,1] | Use UserInterfaceFeatureType.
additionalAuthenticationSequence | property string | [0,1] | Defined authentication sequence, which will be use for additional authentication.
defaultRole | reference ObjectReferenceType | [0,-1] | Reference to the default roles which will be assigned to the user automatically after registration
formRef | reference ObjectReferenceType | [0,1] | Reference to form which is displayed for registration

- ### Items

  - #### identifier

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order: 10

    GUI feature identifier. E.g. identifier for view or widget. The feature specifications that come from different roles will be merged if they have the same identifier. The identifier is also used for diagnostics, e.g. used in the logfiles.

    Although identifier type is defined as string, it is strongly recommended to use URI for all customizations. The URI should be based on identifier that you own (e.g. DNS domain). Using non-URI forms may still work, but there is risk of conflicting with default midPoint configuration.

    If no identifier is specified for a view then midPoint will internally generate a value for the identifier. This internal identifier value is based on the GUI feature definition, e.g. object type and/or collection OID or other aspects of the view. The algorithm for identifier generation may change and the results are not guaranteed to be completely unique. Therefore it is strongly recommended to explicitly set identifier for all the UI features in any non-trivial midPoint configuration.

    Identifier may not be needed at all in some cases.

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order: 20

    Free-form description (comment) intended for system administrator. Description will NOT be displayed as any part of the UI feature. The purpose is to explain the purpose or configuration details.

  - #### documentation

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Technical documentation for a particular object or construct.

    The purpose of this element is to document system configuration and behavior. The documentation will not be presented to end users. In fact, it will probably not be presented at all in midPoint user interface. This documentation element is supposed to be a part of the technical documentation of midPoint deployment. The tools than generate deployment configuration will look for these elements and combine them to compiled documentation document.

    AsciiDoc formatting is assumed for this element. Any leading or trailing whitespace is skipped. Indentation equivalent to he indentation of the first non-blank line of text is also skipped.

  - #### display

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Display properties of the UI feature. It is used to display the link in the menu and so on. Only some parts of display specification may be used. E.g. for views only label is used now. E.g. the CSS properties are ignored.

  - #### visibility

    Flags: RAM,runtime,AVals:4

    Multiplicity: [0,1]

    Display order:

    Defines, whether this feature will be visible or it will be hidden.

    The default (since 4.0) is 'automatic', which means that all defined features will be visible if possible, unless explicitly hidden. However, this can be changed, e.g. by setting default visibility in the dashboard definition. Also, some hardcoded dashboards have different defaults. E.g. the legacy 3.x end-user home page has default visibility of "vacant".

  - #### displayOrder

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order: 30

    The content of this property specifies an order in which the user interface feature should be displayed relative to other similar features that are displayed together. E.g. this may be used to order views in the menu, widgets on the dashboard and so on. These items that do not have any displayOrder definition will be displayed last. Items with the same displayOrder are displayed in alphabetic order.

  - #### applicableForOperation

    Flags: RAM,runtime,AVals:3

    Multiplicity: [0,1]

    Display order:

    Used to distinguish for which operations are the configuration applicable (and so visible) If nothing specified, configuration will be applicable for both add and modify operations (and visible for example for panel in details menu). When there is a need to restrict configuration applicability (and thus visibility) only for e.g. modify object operation, applicableForOperation should be set to 'modify'. When we use wizard option, then we define visible only in some wizard panel.

    Applicable for panel (ContainerPanelConfigurationType) configuration and objectCollectionView configuration.

    EXPERIMENTAl. Might change in future releases.

  - #### name

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Use UserInterfaceFeatureType.identifier instead

  - #### initialLifecycleState

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

  - #### requiredLifecycleState

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

  - #### displayName

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Use UserInterfaceFeatureType.display.label instead

  - #### additionalAuthenticationSequence

    Flags: RAM,runtime

    Multiplicity: [0,1]

    Display order:

    Defined authentication sequence, which will be use for additional authentication.

  - #### defaultRole

    Flags: RAM

    Multiplicity: [0,-1]

    Display order:

    Reference to the default roles which will be assigned to the user automatically after registration

  - #### formRef

    Flags: RAM

    Multiplicity: [0,1]

    Display order:

    Reference to form which is displayed for registration