Hi there and welcome to the forum!
I presume that you have read this FAQ:
http://www.airnavsystems.com/forum/index.php?topic=9.0The formats are as follows:
<MODESMESSAGE>
<DATETIME>20070622141943</DATETIME> - YYYYMMDDHHMMSS
<MODES>400F2B</MODES> - 6 figure Hex code
<CALLSIGN>BAW134</CALLSIGN> - Alpha numeric (7 chrs maximum)
<ALTITUDE>120300</ALTITUDE> - Altitude in feet amsl (not a good example, must be a typing error or an incorrectly reading Mode S box!)
<GROUNDSPEED>451</GROUNDSPEED> - In Nautical MPH
<TRACK>234</TRACK> - Degrees magnetic relative to magnetic north
<VRATE>0</VRATE> - > Rate of climb or descent in feet per minute with climb being “+” and descent “-“
<AIRSPEED></AIRSPEED> - In Nautical MPH
<LATITUDE>-14.1102</LATITUDE> - Decimal degrees of Latitude, with East being “+” and West “-“
<LONGITUDE>-31.5789</LONGITUDE> - Decimal degrees of Longitude, with North being “+” and South “-“
</MODESMESSAGE>
And yes, the data is "optional" as some or all of it might be sent by the aircraft. All units are standard aviation units.
Hope this helps.
Allocator