Use the following mapping transformation rule to add an attribute that is delivered as a part of a pure virtual attribute. For example, when the following transformation rule is applied, the givenName is stored in the server even when it is not specified in the entry. The value is taken from the pure virtual attribute which is defined as mail \${givenName}@example.com.
$ dpconf add-virtual-transformation dataview1 mapping add-attr \ mail \${givenName}@example.com |
First add an entry that contains a virtual attribute, mail, but no givenName attribute. The virtual transformation generates the value for the givenName attribute and the entry is stored with givenName but without the mail attribute. Then, doing a search on using the uid attribute, retrieve the value for givenName, and the same virtual transformation generates the value of the virtual attribute mail.
The following diagram indicates the transformation that occurs on user entries.