Delimiting the Value Field
Several methods of bounding the Value field are available. The first is to simply determine
the number of bytes and to place that count in the length field.
T
CCSD1Z000001
L
Length LI
V
a
1
u
e
1
T
NJPL1K003301
L
Length L2
V
2
Identification
Metadata
T
NJPL1I00A6B0
L
Length L3
V
3
Application
Data
Figure 3 is a schematic diagram of a
product containing two simple TLVOs
(ADI=NJPL3301 and ADI=NJPLA6B0).
In each case, the length fields (L2 and L3)
give the length (byte count) of their
respective Value fields. Note that the
Type field of the first label contains an
ADI = CCSD0001. This is a standardized
ADI that indicates that the Value field
contains additional TLVOs. The length
field contains the byte count of the entire
product, thus effectively creating an
"envelope" for the product. These
envelopes may be nested arbitrarily deeply,
allowing large and complex products to be
created.
Figure 3: Delimit by Length This technique can be used only when the
total length of the unit or product is
known, and when all the entities are physically available to be put on the same medium and
encompassed within the length specification. When these conditions cannot be met, two
other methods of delimiting a Value field may be used: markers and end file indications.
The former uses a standardized TLVO to indicate the start of a data object, and another
TLVO to indicate the end. Thus, large units and products may be delimited much in the
same way as is done with paper file folders. The latter method uses the indication of an end
of file on the media to denote the end of a unit or product.
Data Description Linkage
Each data object must be described in terms of its syntax and semantics. In the SFDU
environment, this is accomplished by packaging a DDR and a DED (or references thereto)
in a unit similar to the one found in figure 2. The relationship between a data unit and its
description information is established by packaging the data description TLVOs (i.e. the
DDR and the DED) with a separate service TLVO (class C TLVO) in a DDU. The class
C TLVO carries the ADI of the SFDU to which the data description information applies.
The ADI is carried in the form of an "ADI—value" expression in the value field of the Class
C TLVO.
Figure 4 gives an example of how this pointing mechanism operates. The DDU (class F,