# Proposal : Positional requirement for Message Seqn num (34) and Sending Time (52)

**URL:** <https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364>\
**Category:** General Q&A\
**Tags:** imported, implementation--opti, xid\_164193\
**Created:** [May 3, 2009, 9:06pm UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364 "2009-05-03T21:06:55Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![kaymahes\_x](https://avatars.discourse-cdn.com/v4/letter/k/c2a13f/32.png) [@kaymahes\_x](https://forum.fixtrading.org/u/kaymahes_x)\
**Post date:** [May 3, 2009, 9:06pm UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/1 "2009-05-03T21:06:55Z")

</div>

Imported from previous forum

---

<div class="post-metadata">

**Author:** ![kaymahes\_x](https://avatars.discourse-cdn.com/v4/letter/k/c2a13f/32.png) [@kaymahes\_x](https://forum.fixtrading.org/u/kaymahes_x)\
**Post date:** [May 3, 2009, 9:06pm UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/2 "2009-05-03T21:06:55Z")

</div>

Message Seqn num (34) should be made 6th field and Sending Time (52) should be made 7th field thereby pushing ApplVerID (1128) to 8th position. Message Seqn num and Sending Time will be present in all messages because Tags 8, 9, 35, 49, 56, 34 and 52 are the only Required Tags from Standard Header and Tags 8, 9, 35 have had positional requirements in the start of message from FIX.4.0 onwards, Tags 49 and 56 have Positional requirements in the start of message from FIX.5.0-SP1 onwards.

Parsing efficiency would improve by this ordering because all required Tags will always be present in the beginning of every message as the first seven fields in fixed order. Other Standard Header tags are optional and Body tags depend on Message Type.

An example of a minimum FIX message is a Heartbeat without TestRequestID (112)

^8=FIXT.1.1^9=77^35=0^49=MAHESH^56=FPL^34=1000^52=20081118-08:15:15^10=007^

Regards,  
K. Mahesh

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [May 3, 2009, 11:14pm UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/3 "2009-05-03T23:14:45Z")

</div>

[original email was from Clive Browning - [clive.browning@rapidaddition.co.uk](mailto:clive.browning@rapidaddition.co.uk) ]  
  
Hi Mahesh,

You have valid points re position of mandatory header fields… i.e. those that will always be required on all messages.

Howevever, I am not sure why Message Seq Num should be 6th field in particular?

There are arguments that it should be 3rd… so that you can check session version, message body length and then seq num is correct… and therefore reject messages not conforming to those validations asap before further processing

Clive

> Message Seqn num (34) should be made 6th field and Sending Time (52)  
> should be made 7th field thereby pushing ApplVerID (1128) to 8th  
> position. Message Seqn num and Sending Time will be present in all  
> messages because Tags 8, 9, 35, 49, 56, 34 and 52 are the only Required  
> Tags from Standard Header and Tags 8, 9, 35 have had positional  
> requirements in the start of message from FIX.4.0 onwards, Tags 49 and  
> 56 have Positional requirements in the start of message from FIX.5.0-  
> SP1 onwards.
> 
> Parsing efficiency would improve by this ordering because all required  
> Tags will always be present in the beginning of every message as the  
> first seven fields in fixed order. Other Standard Header tags are  
> optional and Body tags depend on Message Type.
> 
> An example of a minimum FIX message is a Heartbeat without  
> TestRequestID (112)
> 
> ^8=FIXT.1.1^9=77^35=0^49=MAHESH^56=FPL^34=1000^52=20081118-  
> 08:15:15^10=007^
> 
> Regards,  
> K. Mahesh

---

<div class="post-metadata">

**Author:** ![kaymahes\_x](https://avatars.discourse-cdn.com/v4/letter/k/c2a13f/32.png) [@kaymahes\_x](https://forum.fixtrading.org/u/kaymahes_x)\
**Post date:** [May 3, 2009, 11:32pm UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/4 "2009-05-03T23:32:30Z")

</div>

Hi Clive,

I selected 6th position for Mesg Seq num because positions 1 to 5 are already fixed. Since scope of seqn num is within a SenderCompID + TargetCompID, I think these two fields should precede Seqn num

Regards,  
K. Mahesh

> Hi Mahesh,
> 
> You have valid points re position of mandatory header fields… i.e.  
> those that will always be required on all messages.
> 
> Howevever, I am not sure why Message Seq Num should be 6th field in  
> particular?
> 
> There are arguments that it should be 3rd… so that you can check  
> session version, message body length and then seq num is correct… and  
> therefore reject messages not conforming to those validations asap  
> before further processing
> 
> Clive
> 
> > Message Seqn num (34) should be made 6th field and Sending Time (52)  
> > should be made 7th field thereby pushing ApplVerID (1128) to 8th  
> > position. Message Seqn num and Sending Time will be present in all  
> > messages because Tags 8, 9, 35, 49, 56, 34 and 52 are the only  
> > Required Tags from Standard Header and Tags 8, 9, 35 have had  
> > positional requirements in the start of message from FIX.4.0 onwards,  
> > Tags 49 and 56 have Positional requirements in the start of message  
> > from FIX.5.0- SP1 onwards.
> > 
> > Parsing efficiency would improve by this ordering because all required  
> > Tags will always be present in the beginning of every message as the  
> > first seven fields in fixed order. Other Standard Header tags are  
> > optional and Body tags depend on Message Type.
> > 
> > An example of a minimum FIX message is a Heartbeat without  
> > TestRequestID (112)
> > 
> > ^8=FIXT.1.1^9=77^35=0^49=MAHESH^56=FPL^34=1000^52=20081118-  
> > 08:15:15^10=007^
> > 
> > Regards,  
> > K. Mahesh

---

<div class="post-metadata">

**Author:** ![fplpo\_x](https://avatars.discourse-cdn.com/v4/letter/f/7ab992/32.png) [@fplpo\_x](https://forum.fixtrading.org/u/fplpo_x)\
**Post date:** [May 4, 2009, 12:14am UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/5 "2009-05-04T00:14:56Z")

</div>

[original email was from Clive Browning - [clive.browning@rapidaddition.co.uk](mailto:clive.browning@rapidaddition.co.uk) ]  
  
From the FIX\_Transport\_1.1.PDF file:

1128  
ApplVerID  
APPL  
N  
6  
If provided - the ApplVerID must be the 6th field in the message

Clive

> Hi Clive,
> 
> I selected 6th position for Mesg Seq num because positions 1 to 5 are  
> already fixed. Since scope of seqn num is within a SenderCompID +  
> TargetCompID, I think these two fields should precede Seqn num
> 
> Regards,  
> K. Mahesh
> 
> > Hi Mahesh,
> > 
> > You have valid points re position of mandatory header fields… i.e.  
> > those that will always be required on all messages.
> > 
> > Howevever, I am not sure why Message Seq Num should be 6th field in  
> > particular?
> > 
> > There are arguments that it should be 3rd… so that you can check  
> > session version, message body length and then seq num is correct…  
> > and therefore reject messages not conforming to those validations asap  
> > before further processing
> > 
> > Clive
> > 
> > > Message Seqn num (34) should be made 6th field and Sending Time (52)  
> > > should be made 7th field thereby pushing ApplVerID (1128) to 8th  
> > > position. Message Seqn num and Sending Time will be present in all  
> > > messages because Tags 8, 9, 35, 49, 56, 34 and 52 are the only  
> > > Required Tags from Standard Header and Tags 8, 9, 35 have had  
> > > positional requirements in the start of message from FIX.4.0  
> > > onwards, Tags 49 and 56 have Positional requirements in the start of  
> > > message from FIX.5.0- SP1 onwards.
> > > 
> > > Parsing efficiency would improve by this ordering because all  
> > > required Tags will always be present in the beginning of every  
> > > message as the first seven fields in fixed order. Other Standard  
> > > Header tags are optional and Body tags depend on Message Type.
> > > 
> > > An example of a minimum FIX message is a Heartbeat without  
> > > TestRequestID (112)
> > > 
> > > ^8=FIXT.1.1^9=77^35=0^49=MAHESH^56=FPL^34=1000^52=20081118-  
> > > 08:15:15^10=007^
> > > 
> > > Regards,  
> > > K. Mahesh

---

<div class="post-metadata">

**Author:** ![kaymahes\_x](https://avatars.discourse-cdn.com/v4/letter/k/c2a13f/32.png) [@kaymahes\_x](https://forum.fixtrading.org/u/kaymahes_x)\
**Post date:** [May 4, 2009, 1:03am UTC](https://forum.fixtrading.org/t/proposal-positional-requirement-for-message-seqn-num-34-and-sending-time-52/12364/6 "2009-05-04T01:03:58Z")

</div>

Since ApplVerID (1128) is an optional field, I suggest that it be moved to 8th position.

> From the FIX\_Transport\_1.1.PDF file:
> 
> 1128 ApplVerID APPL N 6 If provided - the ApplVerID must be the 6th  
> field in the message
> 
> Clive
> 
> > Hi Clive,
> > 
> > I selected 6th position for Mesg Seq num because positions 1 to 5 are  
> > already fixed. Since scope of seqn num is within a SenderCompID +  
> > TargetCompID, I think these two fields should precede Seqn num
> > 
> > Regards,  
> > K. Mahesh
> > 
> > > Hi Mahesh,
> > > 
> > > You have valid points re position of mandatory header fields… i.e.  
> > > those that will always be required on all messages.
> > > 
> > > Howevever, I am not sure why Message Seq Num should be 6th field in  
> > > particular?
> > > 
> > > There are arguments that it should be 3rd… so that you can check  
> > > session version, message body length and then seq num is correct…  
> > > and therefore reject messages not conforming to those validations  
> > > asap before further processing
> > > 
> > > Clive
> > > 
> > > > Message Seqn num (34) should be made 6th field and Sending Time  
> > > > (52) should be made 7th field thereby pushing ApplVerID (1128) to  
> > > > 8th position. Message Seqn num and Sending Time will be present in  
> > > > all messages because Tags 8, 9, 35, 49, 56, 34 and 52 are the only  
> > > > Required Tags from Standard Header and Tags 8, 9, 35 have had  
> > > > positional requirements in the start of message from FIX.4.0  
> > > > onwards, Tags 49 and 56 have Positional requirements in the start  
> > > > of message from FIX.5.0- SP1 onwards.
> > > > 
> > > > Parsing efficiency would improve by this ordering because all  
> > > > required Tags will always be present in the beginning of every  
> > > > message as the first seven fields in fixed order. Other Standard  
> > > > Header tags are optional and Body tags depend on Message Type.
> > > > 
> > > > An example of a minimum FIX message is a Heartbeat without  
> > > > TestRequestID (112)
> > > > 
> > > > ^8=FIXT.1.1^9=77^35=0^49=MAHESH^56=FPL^34=1000^52=20081118-  
> > > > 08:15:15^10=007^
> > > > 
> > > > Regards,  
> > > > K. Mahesh
