data

base: dataFIX 4.4FIX 4.2FIX 5.0 SP2length-prefixed

data is a FIX datatype defined in FIX 4.4, FIX 4.2 and FIX 5.0 SP2, carried on the wire as data. 16 fields use it.

Wire format

Base type
data
Fields
16

Raw bytes, length-prefixed by a partner field. The value may legally contain the SOH separator, which is why the length matters.

What the specification says

FIX 4.4

Raw data with no format or content restrictions. Data fields are always immediately preceded by a length field. The length field should specify the number of bytes of the value of the data field (up to but not including the terminating SOH). Caution: the value of one of these fields may contain the delimiter (SOH) character. Note that the value specified for this field should be followed by the delimiter (SOH) character as all fields are terminated with an "SOH".

FIX 4.2

Raw data with no format or content restrictions. Data fields are always immediately preceded by a length field. The length field should specify the number of bytes of the value of the data field (up to but not including the terminating SOH). Caution: the value of one of these fields may contain the delimiter (SOH) character. Note that the value specified for this field should be followed by the delimiter (SOH) character as all fields are terminated with an "SOH".

FIX 5.0 SP2

In FIXML, all data type fields are using base64Binary encoding.

Descriptions are quoted from the FIX Orchestra sources under the Apache 2.0 licence.

How @boarteam/fix handles it

@boarteam/fix reads the partner length field first and takes exactly that many bytes, so an embedded separator does not truncate the value.

Fields with this datatype

Decode this in your own code

The same engine that produced the decoded example above is an Apache-2.0 npm package with zero runtime dependencies. It runs in Node and in the browser, and parse() returns problems as data instead of throwing.

npm i @boarteam/fix @boarteam/fix-dict-fix44