[This message was posted by Jacob Northey of The LaSalle Technology Group 
<[EMAIL PROTECTED]> to the "FAST Protocol" discussion forum at 
http://fixprotocol.org/discuss/46. You can reply to it on-line at 
http://fixprotocol.org/discuss/read/36c9f795 - PLEASE DO NOT REPLY BY MAIL.]

I wanted to comment on this extension proposal, but did not see a thread so I 
will start one here by using the current Extension Proposals document as a 
starting point.

Jake

EXTENSION PROPOSAL - MAP INLINE (table of {bit value, real value} pairs)

Background

In some cases, fields with a small number of values (such as Boolean or 
‘OrdType’) could be represented with fewer than 7 bits, which is the minimum 
wire size for a FAST field. The recent BITGROUP proposal is a mechanism to 
combine several fields together so they can better use these 7 bits (or 14 or 
21...). Greater efficiency could be realized by ‘inlining’ these few bits into 
the pmap itself.

Introduction 

An INLINE operator combined with a MAP will define a small number of bits to 
represent the actvalues being expressed. Early on in FAST, we discussed using 
another bit of pmap for a NULL flag, but chose to use NULL values instead for 
consistency. The same argument was made for Boolean values represented in pmap 
– consistency won out. This proposal argues that expanding pmap bit usage to 
include inline field values gives sufficient compression to warrant the 
complexity.

Examples

Assume we have the field MDUpdateAction which will use values 0, 1, and 2. This 
could be expressed with a simple MAP INLINE:
{ 00, “0” }
{ 01, “1” } { 10, “2” } An extension of this technique could be used for 
variable bit fields:
{ 0, “0” }
{ 10, “1” } { 11, “2” } Another example would by OrdType (optional in MDEntry). 
To support NULL values, you could express the map like this:
{ 0, NULL }
{ 10, “0” } { 11, “1” } Thus, this field takes 1 or 2 bits instead of one byte.

Wire Representation

The wire format would necessarily change. When the next field in the template 
uses MAP INLINE, there would be no field in the message body (after the pmap), 
rather, that data would be in the pmap itself. So the next bits in the pmap 
would be used to traverse the map.


[You can unsubscribe from this discussion group by sending a message to 
mailto:[EMAIL PROTECTED]

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Financial Information eXchange" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/FIX-Protocol?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to