# MappingsType (Complex Type)

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

Generic set of mappings.

Item Summary
Name | Type | Multiplicity | Description
--- | --- | --- | ---
description | property string | [0,1] |
mapping | container MappingType | [0,-1] | Defines how a value of a property (or attribute) should be constructed.

- ### Items

  - #### description

    Flags: RAM,runtime

    Multiplicity: [0,1]

  - #### mapping

    Flags: RAM,runtime

    Multiplicity: [0,-1]

    Defines how a value of a property (or attribute) should be constructed. The value may be static or constructed as an result of evaluating an expression. This structure also defines a method how to merge several value construction definitions, how to behave if a property already has a value, etc. This is reusable data structure, used in schemaHandling, roles and it may also be used in may other places. Motivation: We need to construct attribute or property values on many places in midPoint. E.g. we need that in roles to generate dynamic account attribute values, we need that to define "templates" for identifiers and default values for attributes when creating a new account. We also need that to specify values when creating a new user (user templates). Having the same data structure for all of these cases may simplify the code, as it all can be handled by a generic library reused in many places through the system.