Chapter 5:
SEMANTICS: STATIC AND FRAME DATA

5.1 File Header Logical Record (FHLR)

Each Logical File begins with a File Header Logical Record that serves as an identifying label for the Logical File. A File Header Logical Record is an Explicitly Formatted Logical Record (EFLR) with Type FHLR. A File Header Logical Record contains a single FILE-HEADER Set. A FILE-HEADER Set is unnamed and contains exactly one Object with two Attributes as defined in Figure 5-1. The Origin Subfield of the Name of the File-Header Object must reference the Defining Origin (see §5.2.1). The Identifier Subfield is a single arbitrary character.

The Template Attributes for this Set must contain explicitly the Label and Representation Code Characteristics and only the Label and Representation Code Characteristics. The Count, Units, and Value Characteristics take the global defaults. The Value Characteristics are later defined in the Object's Attributes.

Label Restrictions Comments
SEQUENCE-NUMBER C=1, R=ASCII, U=absent 1
ID C=1, R=ASCII, U=absent 2
Figure 5-1. Attributes of File-Header Object

Comments:

Since the File Header Logical Record is required to be written as a single Logical Record Segment (see §2.2.3.1), a general file management utility can identify File Header Logical Records, modify the Value of the Sequence-Number Attribute, and retrieve the Values of both the Sequence-Number and ID Attributes knowing only the following about DLIS Logical Records (see Figure 5-2):


Figure 5-2. Byte Structure of File Header Logical Record

5.2 Origin Logical Record (OLR)

Origin Logical Records are Explicitly Formatted Logical Records of Type OLR that contain Objects that provide information about the original conditions under which the information in the Logical File was acquired or created. Origin Logical Records may contain Set Types ORIGIN and WELL-REFERENCE-POINT.
5.2.1 Origin Objects
ORIGIN Objects uniquely identify Logical Files and describe the basic circumstances under which Logical Files are created. ORIGIN Objects also provide a means for distinguishing different instances of a given entity. Each Logical File must contain at least one ORIGIN Set, which may contain one or more ORIGIN Objects. The first Object in the first ORIGIN Set is the Defining Origin for the Logical File in which it is contained, and the corresponding Logical File is called the Origin'’s Parent File. It is intended that no two Logical Files will ever have Defining Origins with all Attribute Values identical. Figure 5-3 defines the Attributes of an ORIGIN Object.

Label Restrictions Comments
FILE-ID C=1, R=ASCII
1
FILE-SET-NAME C=1, R=IDENT
2
FILE-SET-NUMBER C=1, R=UVARI
3
FILE-NUMBER C=1, R=UVARI
4
FILE-TYPE C=1, R=IDENT
5
PRODUCT C=1, R=ASCII
6
VERSION C=1, R=ASCII
7
PROGRAMS R=ASCII
8
CREATION-TIME C=1, R=DTIME
9
ORDER-NUMBER C=1, R=ASCII
10
DESCENT-NUMBER
11
RUN-NUMBER
12
WELL-ID C=1
13
WELL-NAME C=1, R=ASCII
14
FIELD-NAME C=1, R=ASCII
15
PRODUCER-CODE C=1, R=UNORM
16
PRODUCER-NAME C=1, R=ASCII
17
COMPANY C=1, R=ASCII
18
NAME-SPACE-NAME C=1, R=IDENT
19
NAME-SPACE-VERSION C=1, R=UVARI
20
Figure 5-3. Attributes of Origin Object

Comments:

1. The File-ID Attribute is an exact copy of the ID Attribute of the File-Header Object of the Parent File, i.e., the Logical File for which this Origin Object is the Defining Origin.
2. The File-Set-Name Attribute is the name of a File Set, a group of Logical Files related according to Producer-defined criteria to which the Parent File belongs. The File Set is an arbitrary grouping of a set of Logical Files and has no DLIS semantic meaning. The File-Set-Name Attribute is not expected to be unique for all File Sets.
3. The File-Set-Number Attribute is a random number, called the File Set Number, that is used to distinguish the Logical Files of one File Set from the Logical Files of another File Set. This number should be such that there is a high probability that it uniquely identifies the File Set. This number should be the same for all Logical Files of a given File Set. This Attribute must be present, even when the File-Set-Name Attribute is absent. In that case, it is considered to apply to the File Set consisting of the single current Logical File.
4. The File-Number Attribute is the File Number of the Parent File relative to the File Set specified by the File-Set-Name Attribute. File Numbers for a File Set are positive and increase in the order in which the Logical Files of the File Set are created. File Numbers for a File Set need not increase sequentially. It should be true, with a high probability, that no two Logical Files will ever have the same File Set Number and File Number combination. Notice that there is no specific relationship defined for File Numbers of Logical Files in the same Storage Set. In particular, a File Set may or may not coincide with the Logical Files of a Storage Set.
5. The File-Type Attribute is a Producer-specified File Type and signifies the general contents of the Parent File or the circumstances under which the Parent File was created.
6. The Product Attribute is the name of the software product (e.g., the wellsite "operating" system) that produced the Parent File.
7. The Version Attribute is the version of the product specified by the Product Attribute.
8. The Programs Attribute is a List of the names of a specific programs or services, operating as part of the software specified by the Product Attribute, that were used to generate the data contained in the Parent File.
9. The Creation-Time Attribute is the date and time at which the Parent File was created.
10. The Order-Number Attribute is a unique accounting number associated with the acquisition or creation of the data in the Parent File. It is typically known as the Service Order Number.
11. The Descent-Number Attribute is meaningful to the Producer. The meaning of this number is specified by the Producer to the Consumer by means external to the DLIS.
12. The Run-Number Attribute is meaningful to the company specified in the Company Attribute. Its use is specified to the Producer by this company by means external to the DLIS.
13. The Well-ID Attribute is a codified identifier of the well in or about which measurements were taken. Whenever applicable, the API Well Number should be used. This is a unique, permanent, numeric identifier assigned to a well in accordance with the American Petroleum Institute Bulletin D12A, January, 1979.
14. The Well-Name Attribute is the name of the well.
15. The Field-Name Attribute is the name of the Field to which the well belongs. If there is no Field, then the value of this Attribute should be WILDCAT.
16. The Producer-Code Attribute is the Producer’s identifying code. The Producer is the company whose authorized agent generated the Logical File using software programs developed under the sponsorship of the company. This code is assigned on request by POSC. A list of current Company Codes for Producers may be obtained from the same source.
17. The Producer-Name Attribute is the Producer’s business or organization name
18. The Company Attribute is the name of the client company for which the data was acquired or computed, typically the operator of the well.
19. The Name-Space-Name Attribute specifies the name of the dictionary in which dictionary-controlled Object Names are administered for this Origin. Each Producer is expected to administer or subscribe to a dictionary of Object Names from which meaningful definitions can be derived.
20. The Name-Space-Version Attribute specifies the version of the dictionary in which dictionary-controlled Object Names are administered for this Origin. Dictionary version N is a superset of dictionary version M whenever N > M.
5.2.2 Well-Reference-Point Objects
Well-Reference-Point Objects specify the Well Reference Point of a well (see §4.1.8). Figure 5-4 defines the Attributes of a Well-Reference-Point Object.

Label Restrictions Comments
PERMANENT-DATUM C=1, R=ASCII 1
VERTICAL-ZERO C=1, R=ASCII 2
PERMANENT-DATUM-ELEVATION C=1 3
ABOVE-PERMANENT-DATUM C=1 4
MAGNETIC-DECLINATION C=1 5
COORDINATE-1-NAME C=1, R=ASCII 6
COORDINATE-1-VALUE C=1 7
COORDINATE-2-NAME C=1, R=ASCII 8
COORDINATE-2-VALUE C=1 9
COORDINATE-3-NAME C=1, R=ASCII 10
COORDINATE-3-VALUE C=1 11
Figure 5-4. Attributes of Well-Reference-Point Object

Comments:

5.3 Axis Logical Record (AXIS)

An Axis Logical Record is an Explicitly Formatted Logical Record that contains information describing the coordinate axes of arrays. Axis Logical Records contain the single Set Type AXIS.
5.3.1 Axis Objects
Axis Objects describe the coordinate axes of an array (see §4.4.4). Each Axis Object describes one coordinate axis. Figure 5-5 defines the Attributes of an Axis Object.

Label Restrictions Comments
AXIS-ID C=1, R=IDENT 1
COORDINATES - 2
SPACING C=1 3
Figure 5-5. Attributes of Axis Object

Comments:

5.4" Long Name Logical Record (LNAME)

A Long Name Logical Record is an Explicitly Formatted Logical Record that contains structured Long Names of Objects. Long Name Logical Records contain the single Set Type Long-Name.
5.4.1 Long-Name Objects
Long-Name Objects represent structured names of other Objects. A Long–Name Object is referenced by (an Attribute of) the Object of which it is the structured name. There are standardized Name Part Types corresponding to the Labels of the Attributes of the Long-Name Object. For each Name Part Type there is a dictionary-controlled Lexicon of Name Part Values. A Name Part Value is a word or phrase. The Long Name is built by selecting those Name Part Types that are applicable to an Object and then selecting for each Name Part Type one or more Name Part Values from the corresponding Lexicons.

A reference to a Long-Name Object establishes a binding between the Long Name and the Identifier of the Object making the reference. Over a period of time the Long Name that is associated with a particular Identifier (for a given Object Type) may evolve, but only to clarify its meaning or to exchange a Name Part Value with an industry-preferred synonym. The Identifier of the referencing Object retains its original usage forever. Figure 5-6 defines the Attributes of a Long-Name Object.

Label Restrictions Comments
GENERAL-MODIFIER R=ASCII 1
QUANTITY C=1, R=ASCII 2
QUANTITY-MODIFIER R=ASCII 3
ALTERED-FORM C=1, R=ASCII 4
ENTITY C=1, R=ASCII 5
ENTITY-MODIFIER R=ASCII 6
ENTITY-NUMBER C=1, R=ASCII 7
ENTITY-PART C=1, R=ASCII 8
ENTITY-PART-NUMBER C=1, R=ASCII 9
GENERIC-SOURCE C=1, R=ASCII 10
SOURCE-PART R=ASCII 11
SOURCE-PART-NUMBER R=ASCII 12
CONDITIONS R=ASCII 13
STANDARD-SYMBOL C=1, R=ASCII 14
PRIVATE-SYMBOL C=1, R=ASCII 15
Figure 5-6. Attributes of Long-Name Object

Comments:

5.5 Channel Logical Record (CHANNL)

A Channel Logical Record is an Explicitly Formatted Logical Record that contains information defining and characterizing Channels (see §4.1.4). Channel Logical Records contain the single Set Type Channel.
5.5.1 Channel Objects
Channel Objects are dictionary-controlled Objects that identify Channels and specify their properties and their representation in Frames. The actual Channel sample values are recorded in Indirectly Formatted Logical Records, when present. Figure 5-7 defines the Attributes of a Channel Object.

CHANNEL Object Names are dictionary-controlled.
Label Restrictions Comments
LONG-NAME C=1, R=(OBNAME< ASCII) -
PROPERTIES R=IDENT 1
REPRESENTATION-CODE C=1, R=USHORT 2
UNITS C=1, R=UNITS 3
DIMENSION R=UVARI 4
AXIS R=OBNAME -
ELEMENT-LIMIT R=UVARI 5
SOURCE C=1, R=OBJREF 6
Figure 5-7. Attributes of Channel Object

Comments:

5.6 Frame Data Logical Records (FDATA)

Frame Data Logical Records are Indirectly Formatted Logical Records that record Channel data packaged in Frames (see §4.1.5).
5.6.1 Frames
A Frame constitutes the Indirectly Formatted Data of a Type FDATA Indirectly Formatted Logical Record (IFLR). The Data Descriptor Reference of the FDATA Logical Record refers to a Frame Object, defined in Figure 5–8, and defines the Frame Type of the Frame.

Frames of a given Frame Type occur in sequences within a single Logical File. A Frame is segmented into a Frame Number, followed by a fixed number of Slots that contain Channel samples, one sample per Slot. The Frame Number is an integer (Representation Code UVARI) specifying the numerical order of the Frame in the Frame Type, counting sequentially from one. All Frames of a given Frame Type record the same Channels in the same order. The IFLRs containing Frames of a given Type need not be contiguous.

A Frame Type may or may not have an Index Channel. If there is an Index Channel, then it must appear first in the Frame and it must be scalar. When an Index Channel is present, then all Channels in the Frame are assumed to be "sampled at" the Index value. For example, if the Index is depth, then Channels are sampled at the given depth; if time, then they are sampled at the given time, etc. Minor variations in this assumption can be declared explicitly in Path Objects, which are described later.

The truth of the assumption just stated is relative to the measuring and recording system used and does not imply absolute accuracy. For example, depth may be measured by a device that monitors cable movement at the surface, which may differ from actual tool movement in the borehole. Corrections that are applied to Channels to improve the accuracy of measurements or alignments to indices are left to the higher-level semantics of applications.

When there is no Index Channel, then Frames are implicitly indexed by Frame Number.

5.7 Frame Logical Record (FRAME)

Frame Logical Records are Explicitly Formatted Logical Records of Type FRAME that contain Objects that specify the characteristics and form of Frames. Frame Logical Records can contain Set Types Frame;, and Path.
5.7.1 Frame Objects
Each Frame Object defines a Frame Type, lists the Channels recorded in the Frame Type, and characterizes the Index of that Frame Type. The Frame Type is equal to the Name of the Frame Object. In addition, each Frame Object specifies whether the contents of the Frames of that Frame Type are encrypted. Figure 5-8 defines the Attributes of a Frame Object.

Label Restrictions Comments
DESCRIPTION C=1, R=ASCII -
CHANNELS R=OBNAME 1
INDEX-TYPE C=1, R=IDENT 2
DIRECTION C=1, R=IDENT 3
SPACING C=1 4
ENCRYPTED C=1, R=USHORT 5
INDEX-MIN C=1 6
INDEX-MAX C=1 7
Figure 5-8. Attributes of Frame Object

Comments:

5.7.2 Data Paths
The fundamental recorded log data consists of a sequence of values (i.e., a Channel) traversing a Locus in space and time. A Locus in space and time is a sequence of distinct points, each of which, in the most general case, has a three-dimensional Position coordinate, and a Time coordinate. The sequence {Valuei, Positioni, Timei} is called a Data Path, and each member of the sequence is called a Step on the Data Path. The sequence {Positioni, Timei} is the Locus of the Data Path. Note that it is possible for two points on a Locus to occupy the same Position in space so long as they occupy that Position at different Times. In the extreme case, a Locus can have a fixed Position.

A complete Position coordinate is made up of three components that correspond to the spatial coordinate system of a well: depth (Borehole or Vertical), Radial Drift, and Angular Drift. Occasionally, both Borehole and Vertical depth components are known and are recorded together.

Data Paths are represented as groups of Channels in Frames. Some or all of the components of a Data Path may be recorded; other components may be unknown or irrelevant. The {Valuei} sequence, known as the Data Path's Value Channel, is always recorded. The mechanism for defining Data Paths is the Path Object. Path Objects are not needed to decode Frames, but they add informational value to the contents of Frames.

5.7.2.1 Path Objects
Path Objects specify which Channels in the Data Frames of a given Frame Type are combined to define part or all of a Data Path, and what variations in alignment exist.

The Index of a Frame Type automatically and explicitly serves as a Locus component of any Data Path represented in the Frame Type whenever Frame Attribute INDEX-TYPE has one of the values angular-drift, borehole-depth, radial-drift, time, or vertical-depth. Figure 5-9 defines the Attributes of a Path Object.

Label Restrictions Comments
FRAME-TYPE C=1, R=OBNAME 1
WELL-REFERENCE-POINT C=1, R=OBNAME 2
VALUE R=OBNAME 3
BOREHOLE-DEPTH C=1 4
VERTICAL-DEPTH C=1 5
RADIAL-DRIFT C=1 6
ANGULAR-DRIFT C=1 7
TIME C=1 8
DEPTH-OFFSET C=1 9
MEASURE-POINT-OFFSET C=1 10
TOOL-ZERO-OFFSET C=1 11
Figure 5-9. Attributes of Path Object

Comments:

5.8 Static Data Logical Record (STATIC)

Static Data Logical Records are Explicitly Formatted Logical Records of Type STATIC that contain a broad category of Set Types. Static Logical Records may contain Set Types Zone, Parameter, Equipment, Tool, PROCESS, Computation, Calibration, Calibration-Measurement, Calibration-Coefficient, Splice, and Group.
5.8.1 Zone Objects
Zone Objects specify single intervals in depth or time. Zone Objects are useful for associating other Objects or values with specific regions of a well or with specific time intervals. Figure 5-11 defines the Attributes of a Zone Object. Zone Object Names are arbitrary.

Label Restrictions Comments
DESCRIPTION C=1, R=ASCII -
DOMAIN C=1, R=IDENT 1
MAXIMUM C=1 2
MINIMUM C=1 3
Figure 5-11. Attributes of Zone Object

Comments:

5.8.2 Parameter Objects
Parameter Objects are dictionary-controlled Objects that specify Parameters (constant or zoned) used in the acquisition and processing of data. Parameters may be scalar-valued or array-valued. When they are array-valued, the semantic meaning of the array dimensions is defined by the application. Figure 5-12 defines the Attributes of a Parameter Object.

PARAMETER Object Names are dictionary-controlled.
Label Restrictions Comments
LONG-NAME C=1, R=(OBNAME, ASCII) -
DIMENSION R=UVARI 1
AXIS R=OBNAME -
ZONES R=OBNAME 2
VALUES - 3
Figure 5-12. Attributes of Parameter Object

Comments:

5.8.3 Equipment Objects
Equipment Objects are dictionary-controlled Objects that specify the presence and characteristics of surface and downhole equipment used in the acquisition of data. The purpose of this Object is to record information about individual pieces of equipment of any sort that is used during a job. The Tool Object, described below, provides a way to collect equipment together in ensembles that are more readily recognizable to the Consumer. Figure 5-13 defines the Attributes of an Equipment Object.


Figure 5-13. Attributes of Equipment Object

Comments:

5.8.4 Tool Objects
Tool Objects are dictionary-controlled Objects that specify ensembles of equipment that work together to provide specific measurements or services. Such combinations are more recognizable to the Consumer than are their individual pieces. A typical tool consists of a sonde and a cartridge and possibly some appendages such as centralizers and spacers. It is also possible to identify certain pieces or combinations of surface measuring equipment as tools. Figure 5-14 defines the Attributes of a Tool Object.

TOOL Object Names are dictionary-controlled.
Label Restrictions Comments
DESCRIPTION C=1, R=ASCII -
TRADEMARK-NAME C=1, R=ASCII 1
GENERIC-NAME C=1, R=ASCII 2
PARTS R=OBNAME 3
STATUS C=1, R=STATUS 4
CHANNELS R=OBNAME 5
PARAMETERS R=OBNAME 6
Figure 5-14. Attributes of Tool Object

Comments:

5.8.5 Process Objects
Process Objects are dictionary-controlled Objects, each of which describes a specific process or computation applied to input Objects to get output Objects. Figure 5-15 defines the Attributes of a Process Object.

Label Restrictions Comments
DESCRIPTION C=1,=(OBNAME, ASCII) -
TRADEMARK-NAME C=1, R=ASCII 1
VERSION C=1, R=ASCII 2
PROPERTIES R=IDENT 3
STATUS C=1, R=IDENT 4
INPUT-CHANNELS R=OBNAME 5
OUTPUT-CHANNELS R=OBNAME 6
INPUT-COMPUTATIONS R=OBNAME 7
OUTPUT-COMPUTATIONS R=OBNAME 8
PARAMETERS R=OBNAME 9
COMMENTS R=ASCII 10
Figure 5-15. Attributes of Process Object

Comments:

5.8.6 Computation Objects
Computation Objects are dictionary-controlled Objects that contain results of computations that are more appropriately expressed as Static Information rather than as Channels. Computation Objects are similar to Parameter Objects, except that Computation Objects may be associated with Property Indicators, and Computation Objects may be the output of PROCESS Objects (see §5.8.5). Figure 5-16 defines the Attributes of a Computation Object.


Figure 5-16. Attributes of Computation Object

Comments:

5.8.7 Calibration Information
The most common method of calibration is the computation
Calibrated Channel = Gain * Uncalibrated Channel + Offset,
where the coefficients "Gain" and "Offset" are computed from two measurements (Zero and Plus) of the Uncalibrated Channel and their two corresponding references. Such a calibration is acceptable provided that the measurements are within a certain tolerance of the references and the coefficients are within a certain tolerance of their nominal values, e.g., Gain = 1 and Offset = 0.

This method of calibration is not universal, and as measuring systems become more complex the method of calibration becomes more complex. Nevertheless, a number of interesting calibration models, although computationally distinct from the model shown above, use the same basic types of information:

The Objects defined in the next two sections support the recording of a particular generalization of the information listed above.
5.8.7.1 Calibration-Measurement Objects
Calibration-Measurement Objects record measurements, references, and tolerances used to compute calibration coefficients. Figure 5-17 defines the Attributes of a Calibration-Measurement Object. Calibration-Measurement Object Names are arbitrary.


Figure 5-17. Attributes of Calibration-Measurement Object

Comments:

5.8.7.2 Calibration-Coefficient Objects
Calibration-Coefficient Objects record coefficients, their references, and tolerances used in the calibration of Channels. Figure 5-18 defines the Attributes of a Calibration-Coefficient Object. Calibration-Coefficient Object Names are arbitrary.


Figure 5-18. Attributes of Calibration-Coefficient Object

Comments:

5.8.7.3 Calibration Objects
Calibration Objects identify the collection of measurements and coefficients that participate in the calibration of a Channel. Figure 5-19 defines the Attributes of a Calibration Object. Calibration Object Names are arbitrary.


Figure 5-19. Attributes of Calibration Object

Comments:

5.8.8 Group Objects
Group Objects indicate logical groupings of other Objects. The use of Group Objects is completely at the discretion of the Producer to define whatever associations are deemed useful. Figure 5-20 defines the Attributes of a Group Object. Group Object Names are not dictionary-controlled but usually are selected to convey some meaning to the Consumer.


Figure 5-20. Attributes of Group Object

Comments:

5.8.9 Splice Objects
Splice Objects describe the process of concatenating two or more instances of a Channel (e.g., from different runs) to get a resultant spliced Channel. Figure 5-21 defines the Attributes of a Splice Object.

Lable Restrictions Comments
OUTPUT-CHANNELS C=1, R=OBNAME 1
INPUT-CHANNELS R=OBNAME 2
ZONES R=OBNAME 3
Figure 5-21. Attributes of Splice Object

Comments:

5.9 Unformatted Data Logical Records (NOFORM)
Unformatted Data Logical Records are Indirectly Formatted Logical Records of Type NOFORM that contain "packets" of unformatted (in the DLIS sense) binary data. The Data Descriptor reference of the NOFORM Logical Record refers to a NO-FORMAT Object, defined in Figure 5-22. The purpose of Unformatted Data Logical Records is to transport arbitrary data that is of value to the Consumer, the format of which is known by the Consumer, but which has no DLIS Semantic meaning.
5.10 Unformatted Data Identifier Logical Records (UDI)
Unformatted Data Identifier Logical Records are Explicitly Formatted Logical Records of Type UDI that contain the single Set Type NO-FORMAT. The purpose of Unformatted Data Identifier Logical Records is to identify data that is recorded in Unformatted Data Logical Records.
5.10.1 No-Format Objects
NO-FORMAT Objects identify packet sequences of unformatted binary data. The Indirectly Formatted Data field of each NOFORM IFLR that references a given No-Format Object contains a segment of the source stream of unformatted data. This source stream is recovered by concatenating these segments in the same order in which they occur in the NOFORM IFLRs. Each segment of the source stream is considered under the DLIS to be a sequence of bytes, and no conversion is applied to the bytes as they are placed into the IFLRs nor as they are removed from the IFLRs. Figure 5-22 defines the Attributes of a No-Format Object.


Figure 5-22. Attributes of No-Format Object

Comments:

5.11 End of Data Logical Records (EOD)

End of Data Logical Records are Indirectly Formatted Logical Records of Type EOD that signify the end of a given sequence of IFLRs. It is useful for the Consumer to know when a sequence of IFLRs ends, particularly when more data, either Static or Dynamic, follows in the Logical File.

The Data Descriptor Reference of an EOD IFLR is a copy of the Data Descriptor Reference of the sequence of IFLRs that is to be indicated ended. The Indirectly Formatted Data of the EOD IFLR consists of a single value (Representation Code USHORT) that contains the Logical Record Type of the sequence of IFLRs that has ended.

To illustrate this, let "A" and "B" represent two distinct Data Descriptor Reference values. The IFLRs might occur in a Logical File in the following fashion:

{FDATA, A, data ... }
{FDATA, A, data ... }
{NOFORM, B, data ... }
{NOFORM, B, data ... }
    • • •
{NOFORM, B, data ... }
{EOD, B NOFORM}        end of NOFORM sequence "B"
{FDATA, A, data ... }
    • • •
{EOD, A, FDATA}            end of FDATA sequence "A"