Usage of TradingSession concept

Imported from previous forum

I found TradingSession concept very useful. I have matched TradingSession with DealingDesk entity and that simplifies a lot of things within message routing. But in fix app messages specs you could find:

  1. no TradingSessionID/SubId
  2. TradingSessionID/SubID specified in message body
  3. List of TradingSessionID/SubID within the NoTradingSessions group

Just one example:
ExecutionReport has TradingSessionID/SubID only in message body; OrderCancelReplaceRequest has list of TradingSessionID/SubIDs and
OrderCancelRequest has no TradingSessionID/SubID.

In order to use TradingSession concept
For 1st kind of messages I have added TradingSessionID/SubID to body
And for 3rd ones I have restricted usage of only one TradingSession line in NoTradingSessions repeating group.

Questions: is fix protocol going support TradingSessionID/Sub everywhere? (it seems to me that missing of TradingSessionID/SubID is just a typo) In which manner? 2 or 3? I’m just afraid you will add TradingSessionSupport in 3) manner when I use 2)

Well, also I did not find any reason of many TradingSessions per one request. In the same example: how that possible that order cancel replace could be handled by many of Trading Sessions?