Built-in Chunk Types

This specification defines several built-in chunk types that the TuningFork understands. It is possible to install plug-ins into the TuningFork to process additional types of chunks. If a chunk type is not known to the TuningFork or any of the installed plug-ins, chunks of that type are skipped. This is possible because the chunk header contains the length of the chunk.

Table 2: Built-in Chunk Types
Id Name Ordering Plurality
1 Properties anytime multiple
2 Feedlet anytime multiple
3 EventTypeSpace initialization multiple
4 EventType anytime multiple
5 Event anytime multiple
6 String Table anytime multiple

Chunk Ordering

Any implementation of the specification has to satisfy certain constraints with respect to the order in which chunks can appear in the feed. This specification defines some fundamental chunk ordering constraints. Extensions of the specification can impose additional constraints.

The fundamental ordering constraints are straightforward. First, chunks of some chunk types (initialization chunks) have to appear at the beginning of the feed. Second, meta-data chunks such as Feedlet or EventType must appear before any of the data chunks that use the definitions (feedlets or event types respectively) introduced by the meta-data chunk.

Chunk Plurality

Furthermore, the plurality of a chunk type differentiates between single and multiple instance chunk types. A feed can only contain a single chunk of each single instance chunk type, but it can contain many chunks of a multiple instance chunk type.