The identity constraints are a part of the xml schema specification.
The identity constraints defined in xml schema will be ported to the generated MForm
control.
The identity constraints consist of two types: keys and key references.
Both the keys and the key references work within the scope
of the IdentityConstaint control.
Items, that will have the key constraint are the ones, that are selected
with the use of Selector property, relative to the IdentityConstaint's
owner item.
Items, that will have the key reference constraint are the ones, that
are defined with the use of KeyRef inner property, selected with the
use of its Selector property.
All items with the same key constraint, need to have unique values.
In a situation, when the value of the key is unimportant (it serves only as an id),
the AutoFill property of the IdentityConstraint may be set. This way,
when a new key item is created, it will be filled with the next possible integer
value.
All items with the key reference constraint, may only have a value from the list
of key values.
To make it possible, the item with the key reference constraint should have a
ValueHandler that implements the IListControlValueHandler
property. In other words, the ValueHandler of the key reference item
should accept a list of possible values.