Data Definition Language (DDL) Reference Manual
SPI Tokens
Data Definition Language (DDL) Reference Manual—529431-004
7-16
TOKEN-MAP
When VERSION or NOVERSION is specified for a group:
•
Every field in the group inherits the product version specified for the group.
•
No field within the group can have a VERSION or NOVERSION clause.
If you specify a VERSION or NOVERSION clause for a range of fields or groups, you
must not specify a VERSION or NOVERSION clause for any field or group within the
range; this can result in a field having more than one product version.
An extensible structured token must be extended only by adding new fields to the end
of the token. As new fields are added, new VERSION or NOVERSION clauses must
be added to the token map for the new fields in the extensible structured token.
For more information on using product versions in extensible structured tokens, see
the SPI Programming Manual and the SPI Common Extensions Manual.
Every field in the referenced definition must have an SPI null value to which the field is
initialized by SPI before actual values are placed in the field. SPI null values indicate
the presence or absence of a value in the field. A field with an SPI null value is
effectively not present. The SPI null value can be:
•
Explicitly specified with the clause SPI-NULL on page 6-37.
•
Derived from the SPI null value of a group definition that contains the elementary
item.
•
Implicitly specified by default; the default value for SPI-NULL is 255.
The null value specification for a group of bit fields that share the same byte or word is
generated as one contiguous block having an SPI-NULL value of 255 following the
product version number.
You can specify a REDEFINES clause in the definition of an extensible structured
token, but redefined fields have the same SPI null value as the fields they overlay.
If you include comments in your token map definition, the DDL compiler issues a
warning message and does not save the comments.
SPI considers a field to contain an SPI null value if every byte in the field contains the
SPI null value for the field. You use the SSNULL operating system procedure to set
each field of the structure to its specified SPI null value. For a description of the
SSNULL procedure, see the Distributed Name Service (DNS) Management
Programming Manual.
For the SPI null value to indicate the presence or absence of a value in its associated
field, the SPI null value must not be a legitimate value for the field. If every possible
value of a field is legitimate, then an SPI null value cannot be used to indicate the
presence or absence of a value. In such a case, you have two alternatives:
•
Indicate the presence or absence of a non-null value in the field by an is-
present field. An is-present field is a Boolean field that can be set to -1 to
indicate that the field has a value (is present), or set to 0 to indicate the field value
is null (is not present). The field must still have an explicit or implicit null value.