Knowledgebase
Map file Definition LDAP-LDAP
Category:Map Files
Last Updated:2011-08-18
 
Download PDF version
A map file is processed from top to bottom in order. Each line represents an assignment much like a math equation. For example if you wanted to assign the destination attribute 'RFC822' with the information from the source attribute 'mail':
rfc822=^mail^
Constants can also be added into the attribute assignment. The following will set the 'department' attribute to be the value 'support':
department=support
There are other delimiters you can use to process the source attribute in different ways:
- Attribute mapping
- ^^ This will map the first value of the source attribute. This is typically used for most mappings.
- [] This will map all values of the attribute in [] to the destination attribute. Note the destination attribute must be defined as a multivalued attribute on the destination system's schema.
- {} This will map the first value of the source attribute and remove it. The next assignment using either ^^ or {} will use the NEXT value of that source variable.
- Internal variables
- ~~ These are UnitySync internal generated variables as defined in Knowledge Base article #218.
- Map and translate DN defined attributes
- Special source attributes require a DN format. A good example of this is the 'Manager' or 'SeeAlso' attribute. This attribute typically is a pointer to another LDAP record's DN. This DN needs to be translated to the destination system in order to work properly. The following delimiters will automatically translate DN's.
## This will map and translate the first value of the attribute. If the DN cannot be mapped the field will be left blank.
%% This will map and translate all values of this attribute.
- Trimming attributes
- A # sign will only assign the x ammount of characters from the left. For example, the source attribute 'title' has a value of 'CEO and CFO of broadbase operations'. The destination system only allows 11 characters to be assigned to it's attribute -- 'info'.
info#11=^title^
- Multivalue Seperator
- | The multivalue seperator give you the ability to quickly assign multiple values to a destination object. A good example of this is objectclass:
objectclass=top|person|inetorgperson
This can be combined with the above delimiters as well. In this example the destination attribute 'mail' is multi valued. This can be assigned two different ways:
1. mail=^mail^|[othermail]
2. mail=^mail^
mail=[othermail]
Both examples 1 & 2 will perform the same function. The destionation mail attribute will be assigned the first value of the source mail attribute along with all the values of othermail.
- Mixing variable and constant data
- displayname=~cn~ - Sales
In the above example ' - Sales' will be appended to every the ~cn~ variable and assigned to displayname attribute
displayname=~cn~ - ^department^
In this example a more dynamic assignment can be made.
- Constants and multivalued attributes
- mail=SMTP:[othermail]
In the above example every value of othermail will be prepended with SMTP: and assigned to mail.