The Identity type attribute supports automatic generation of integer values according to a Sequence ID specified when the attribute is created. The Sequence ID is an alpha-numerical identifier. The values generated will be unique within the specified sequence.
The Sequence ID must always be specified for an identity attribute.
Defining a Sequence Without any Formatting
To generate an integer value without any prefix or other formatting, simply enter 'Counter' in Sequence id.
Defining a Sequence With Formatting
Using a prefix and a separator (such as a hyphen) between a prefix and the integer is optional and would be defined as follows:
<Prefix string> + "-" + <Sequence identifier>
In other words, the prefix will come first, followed by a hyphen symbol, and the integer value will come last. The value displayed in the Explorer client will include the prefix, hyphen and identifier.
Example String Definition
Things to Consider
- Identity attributes cannot be cloned. Objects created via cloning will get new, unique values.
- Default values cannot be specified.
- The "Allow empty value" option does not apply to identity attributes. The values are always auto-generated.
- Identity attributes cannot be imported as an identity attribute ("You cannot explicitly set values of identity attributes"). Because they are auto-generated, it would cause a problem if you imported, for example, an ID=1 when there already exists an ID=1 in the target database. To import an identity attribute, you must first create a string-type attribute in your target meta model and then import the identity attribute values to the new string attribute via mapping in the XML import file. This is described in How to Import Identity Attribute Values.