Following the item header, the item body contains zero or more attributes. Usually, trailing null-value attributes do not need an attribute mark. Attribute marks are necessary for null values only if they precede a non-null valued attribute to ensure proper placement within the item.
Attributes can contain |
|
Values can contain |
|
What kind of information the data represents is defined by another item (one that resides in the file’s dictionary). The item body contains all of the data associated with this item in attributes. The item can contain zero or more attributes.
Attribute |
An attribute is made up of zero or more values followed by an attribute mark. |
Value |
A value can contain zero or more data, each piece is separated by a value mark. What kind of information the values represent is defined elsewhere. There are separate data structures used to define each attribute and the values therein. These structures are called attribute-defining items and reside in the file’s dictionary. |
Segment Mark |
Items are terminated with a special delimiter called a segment mark. To improve data retrieval speed, items are required to begin on a word boundary (even byte address), which means that every item's length must be an even number of bytes. A second padding segment mark makes up the difference when necessary. |
See Also