2.1.6.1 Chart

There are three types of future records (section 2.1.6) that can appear in the Chart Sheet Substream (section 2.1.7.20.1).

The first type of future record is specific to a chart (section 2.2.3.3) and is stored by using the future record architecture as specified in the Future Record section (section 2.1.6). Specifically, these future records that are specific to charts have a record type that MUST be greater than or equal to 2048 and MUST be less than or equal to 2303, as specified in section 2.3. These future records MUST exist in the collection of records (section 2.1.4) specified by the StartBlock records (section 2.4.266) and EndBlock records (section 2.4.100), unless they exist in the collection of records specified by the StartObject records (section 2.4.267) and EndObject records (section 2.4.101). The StartBlock records (section 2.4.266) and EndBlock records themselves MUST NOT appear in the collection of records specified by the StartObject records and EndObject records. Furthermore, a ChartFrtInfo record (section 2.4.49) MUST precede the first future record that is specific to a chart in a Chart Sheet Substream.

The second type of future record is stored by wrapping otherwise non-future records in the FrtWrapper record (section 2.4.130), as specified in section 2.4.130. These records MUST be written in their entirety (the record type, record size and record data components, as specified in section 2.1.4) in the wrappedRecord field of the FrtWrapper record. These MUST exist in the collection of records specified by the StartObject records and EndObject records.

The third type of future record is any other future record that is stored by using the future record architecture as specified in section 2.1.6, not belonging to the first two types.

See the respective record definitions (section 2.4) for details on how these records are written relative to other future records in the Chart Sheet Substream.