In traditional FIX messages each field takes the form “Tag=Value<SOH>”, where the tag is a number representing which field is being transmitted and the value is the actual data content. The ASCII <SOH> character is used as a byte delimiter to terminate the field. For example:
35=x|268=3 (message header)
279=0|269=2|270=9462.50|271=5|48=800123 (trade)
279=0|269=0|270=9462.00|271=175|1023=1|48=800123(new bid 1)
279=0|269=0|270=9461.50|271=133|1023=2|48=800123(new bid 2)
FAST eliminates redundancy with a template that describes the message structure. This technique is known as implicit tagging as the FIX tags become implicit in the data. A FAST template replaces the tag=value syntax with “implicit tagging” as follows:
• Tag numbers are not present in the message but specified in the template
• Fields in a message occur in the same sequence as tags in the template
• The template specifies an ordered set of fields with operators