PingDirectory

Constructed attributes

A constructed attribute is an attribute whose value is computed from values that are assigned to other attributes. For example, the system might construct a full- or common-name attribute, cn, from values that are assigned to the standard givenName and sn attributes, as follows:

dsconfig create-constructed-attribute
  --attribute-name ReqConstructedCN --set attribute-type:cn \
  --set 'value-pattern:{givenName} {sn}'

Beginning with Delegated Admin 3.5.0 and PingDirectory server 7.3.0.1, the value of a constructed attribute can be updated automatically whenever the value of a source attribute is created or when it is edited.

dsconfig set-rest-resource-type-prop \
  --type-name users  \
  --set post-create-constructed-attribute:ReqConstructedCN  \
  --set update-constructed-attribute:ReqConstructedCN

In these examples, a change to the value of givenName or sn forces a corresponding change to the value of cn. Attributes that contribute to a required constructed attribute are identified in the UI as Required even if they were not originally designated as such. Because cn is a required attribute in this example, givenName and sn are also required.

An attribute’s capability of being changed after its creation is called its mutability.

As with standard attributes, constructed attributes are stored as Lightweight Directory Access Protocol (LDAP) attributes in a database like the PingDirectory server.