Imported from previous forum
How do one see if a field is nullable?
I have problem with this part:
“If an integer is nullable, every non-negative integer is incremented by 1 before it is encoded. The NULL representation of a nullable integer is a 7-bit entity value where all bits are zero.”
I can’t quite figure out which fields to decrement after decoding as I’m sure if a field are nullable or not.
Is there some kind of specification for this or is that on a field by field basic between the client and server?
Best regards
Jens Gotthardsen
Hi Jens,
whether a field is nullable depends on the its definition. this is not conveyed in the transfer format, but is bilaterally agreed between the two parties of a FAST message exchange.
/Rolf
How do one see if a field is nullable?
I have problem with this part: “If an integer is nullable, every non-
negative integer is incremented by 1 before it is encoded. The NULL
representation of a nullable integer is a 7-bit entity value where all
bits are zero.”I can’t quite figure out which fields to decrement after decoding as I’m
sure if a field are nullable or not.Is there some kind of specification for this or is that on a field by
field basic between the client and server?Best regards Jens Gotthardsen
Hi Rolf,
Thanks a lot. But I don’t quite understand if one has to keep a list of nnullable fields outside the template when that was the plase to put it.
My problem is that I know that this length from the MDIncRef/MDEntries segment is not nullable:
but this from the MDIncRef/MDEntries/MDEntry/TradeCondition/ is nullable
I can see it from the data but not elsewhere. Do I have to keep a seperate list of fields that I find? I have an idea that all fields which are optional are nullable as well. That would make sence but I cant find any doc to support that teori
Fast to Fix ![]()
Jens G
Hi Jens,
whether a field is nullable depends on the its definition. this is not
conveyed in the transfer format, but is bilaterally agreed between the
two parties of a FAST message exchange./Rolf
Hi Jens,
I was maybe a bit terse in my previous reply to you. The bilateral agreement I was referring to is the template exchange. The template carries the needed info.
For details of when a field is nullable, see sections 10.4, 10.5 of the 1.1 spec.
/Rolf
Hi Rolf,
Thanks a lot. But I don’t quite understand if one has to keep a
list of nullable fields outside the template when that was the
plase to put it.My problem is that I know that this length from the
MDIncRef/MDEntries segment is not nullable:
name=“NoMDEntries” id=“268”>but this from the MDIncRef/MDEntries/MDEntry/TradeCondition/
is nullableI can see it from the data but not elsewhere. Do I have to keep a
seperate list of fields that I find? I have an idea that all fields
which are optional are nullable as well. That would make sence but I
cant find any doc to support that teoriFast to Fix
Jens G
Hi Jens,
whether a field is nullable depends on the its definition. this is not
conveyed in the transfer format, but is bilaterally agreed between the
two parties of a FAST message exchange./Rolf
Hi Rolf,
Thanks a lot. Did miss that part. I have boiled those sections down for people having the same trouble reading as me ![]()
All madatory fields are not nullable. All optional fields are nullable. For operation Default, Copy and Increment the null updates the previous value. For delta operations the null is bypassed.
For decimal fields the exponent is nullable if the field is optional else it is not nullable. Mantise is alway not nullable.
Length fields follows the parent sequence and is nullable if the sequence is optional.
Fast to fix
Jens G
Hi Jens,
I was maybe a bit terse in my previous reply to you. The bilateral
agreement I was referring to is the template exchange. The template
carries the needed info.For details of when a field is nullable, see sections 10.4, 10.5 of
the 1.1 spec./Rolf
“All mandatory fields are not nullable”
? which of the below is the correct interpretation ?
Some mandatory fields are nullable while others are not, ie all mandatory fields cannot be null at the same time, but there are conditionally nullable fields / combinations
or
None of the mandatory fields are nullable
Regards,
K. Mahesh
Mandatory fields are never nullable by definition. There is only a single way of specifying that a nullable representation should be used for a field: specify that it has optional presence in the template. In the XML syntax this is done by setting the presence attribute to the value “optional” as in
/David
“All mandatory fields are not nullable”
? which of the below is the correct interpretation ?
Some mandatory fields are nullable while others are not, ie all
mandatory fields cannot be null at the same time, but there are
conditionally nullable fields / combinationsor
None of the mandatory fields are nullable
Regards,
K. Mahesh
Jens,
Thank you so much for this concise explanation! I can not tell you how confused I was about this after reading the spec.
Thanks again!
Brandon
Hi Rolf,
Thanks a lot. Did miss that part. I have boiled those sections down for
people having the same trouble reading as meAll madatory fields are not nullable. All optional fields are nullable.
For operation Default, Copy and Increment the null updates the previous
value. For delta operations the null is bypassed.For decimal fields the exponent is nullable if the field is optional
else it is not nullable. Mantise is alway not nullable.Length fields follows the parent sequence and is nullable if the
sequence is optional.Fast to fix Jens G
Hi Jens,
I was maybe a bit terse in my previous reply to you. The bilateral
agreement I was referring to is the template exchange. The template
carries the needed info.For details of when a field is nullable, see sections 10.4, 10.5 of
the 1.1 spec./Rolf