Gemini feed: Train vs Allocation origin

37 views
Skip to first unread message

Roy Doyle

unread,
Nov 22, 2025, 4:24:49 AM (6 days ago) Nov 22
to A gathering place for the Open Rail Data community
Hi - I'm struggling to make sense of the different origin/destination tags in the Gemini feed (i.e. TrainOriginLocation, AllocationOriginLocation, TrainDestLocation, AllocationDestinationLocation), can anyone enlighten me?

I can see that the TrainOriginLocation and TrainDestLocation cover the whole of a journey, but what are the AllocationXXXLocations used for? 

I decoded an example message for 5Y46 on the 19th - I can see it's an ECS move from Kings Cross to Bounds Green with two units (800205+800210) - I'm not sure of the significance of the Allocation times in square brackets:

5Y46: seq=1
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [KNGX @ 2025-11-19 21:42:00 -> FRMPKRS @ 2025-11-19 21:56:00]
2025-11-19 DN506 : 1 = 800205
5Y46: seq=2
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [FRMPKRS @ 2025-11-19 22:46:00 -> BOWERRL @ 2025-11-19 23:33:30]
2025-11-19 DN506 : 2 = 800205
5Y46: seq=3
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [FRMPKRS @ 2025-11-19 22:46:00 -> BOWERRL @ 2025-11-19 23:33:30]
2025-11-19 DN501 : 1 = 800210
5Y46: seq=4
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [BOWERRL @ 2025-11-19 23:47:00 -> BNDSGRN @ 2025-11-19 23:52:00]
2025-11-19 DN506 : 1 = 800205
5Y46: seq=5
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [BOWERRL @ 2025-11-19 23:47:00 -> BNDSGRN @ 2025-11-19 23:52:00]
2025-11-19 DN501 : 2 = 800210

Peter Hicks

unread,
Nov 22, 2025, 4:52:16 AM (6 days ago) Nov 22
to openrail...@googlegroups.com
Hi Roy

On Saturday, 22 November 2025 at 09:24, Roy Doyle <bob....@gmail.com> wrote:

Hi - I'm struggling to make sense of the different origin/destination tags in the Gemini feed (i.e. TrainOriginLocation, AllocationOriginLocation, TrainDestLocation, AllocationDestinationLocation), can anyone enlighten me?

I can see that the TrainOriginLocation and TrainDestLocation cover the whole of a journey, but what are the AllocationXXXLocations used for?

Formations can change over the course of a schedule.  For example, a 5-car service from Carmarthen to London Paddington will be in reverse from Swansea given the track layout.  Same unit, different orientation.  Similarly, if the same 5-car train joins up with another 5-car train at Swansea, the unit from Carmarthen will be in reverse formation and the unit at Swansea will either be at the front (if it arrived after the first unit) or at the rear (if it was already in the platform).

In your example, it looks like 5Y46 is formed from 800205 from Kings Cross to Ferme Park, couples on to 800210 and runs to Bowes Park, reverses and ends in Bounds Green depot.  Think of the messsages like this:

5Y46: seq=1
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [KNGX @ 2025-11-19 21:42:00 -> FRMPKRS @ 2025-11-19 21:56:00]
2025-11-19 DN506 : 1 = 800205

First allocation for this service - 800205 valid on departure from Kings Cross at 21:42 to arrival at Ferme Park at 21:56.

5Y46: seq=2
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [FRMPKRS @ 2025-11-19 22:46:00 -> BOWERRL @ 2025-11-19 23:33:30]
2025-11-19 DN506 : 2 = 800205

Second allocation for this service - 800205 valid on departure from Ferme Park at 22:46 (the train presumably is scheduled to sit at Ferme Park from 21:56 to 22:46)  until arrival at Bowes Green at 23:33.  It is the second unit in the formation.  Your data structure may not be ordered based on sequence and position.

5Y46: seq=3
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [FRMPKRS @ 2025-11-19 22:46:00 -> BOWERRL @ 2025-11-19 23:33:30]
2025-11-19 DN501 : 1 = 800210

Third allocation, and this is for the same leg as the second - but it's 800210 at the front, and this is valid for the same leg of the journey as the second allocation.  So the train departs Ferme Park as 800210 + 800205.

5Y46: seq=4
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [BOWERRL @ 2025-11-19 23:47:00 -> BNDSGRN @ 2025-11-19 23:52:00]
2025-11-19 DN506 : 1 = 800205

On departure from Bowes Park, 800205 is in position 1...

5Y46: seq=5
KNGX @ 2025-11-19 21:42:00 -> BNDSGRN @ 2025-11-19 23:52:00 : [BOWERRL @ 2025-11-19 23:47:00 -> BNDSGRN @ 2025-11-19 23:52:00]
2025-11-19 DN501 : 2 = 800210

...and 800210 is in position 2.

Does that make sense?


Peter

Roy Doyle

unread,
Nov 22, 2025, 5:37:20 AM (6 days ago) Nov 22
to A gathering place for the Open Rail Data community
Makes perfect sense, thank you! 

So this one message refers to a single service (5Y46) and all of the moves that go to make it up. Each of the moves is represented by the  sequence of Allocations - the message shows all of the moves,  possibly with joins and/or splits, and/or direction changes. 

Looking further into the message log I can see now that 800210 spent the day working Kings Cross - Lincoln Central and back, then made the move from Kings Cross to Ferme Park as 5Y89, getting there at 2033. 

5Y89: seq=1
KNGX @ 2025-11-19 20:19:00 -> FRMPKRS @ 2025-11-19 20:33:00 : [KNGX @ 2025-11-19 20:19:00 -> FRMPKRS @ 2025-11-19 20:33:00]

2025-11-19 DN501 : 1 = 800210

I can also see that earlier in the day it had originally been scheduled to move to Ferme Park as 5Y89 as above, and was then going to continue on (alone) to Bounds Green:

5Y89: seq=1
KNGX @ 2025-11-21 20:19:00 -> BNDSGRN @ 2025-11-21 22:03:00 : [KNGX @ 2025-11-21 20:19:00 -> FRMPKRS @ 2025-11-21 20:33:00]
2025-11-21 DN501 : 1 = 800210
5Y89: seq=2
KNGX @ 2025-11-21 20:19:00 -> BNDSGRN @ 2025-11-21 22:03:00 : [FRMPKRS @ 2025-11-21 21:04:00 -> BOWERRL @ 2025-11-21 21:50:00]
2025-11-21 DN501 : 1 = 800210
5Y89: seq=3
KNGX @ 2025-11-21 20:19:00 -> BNDSGRN @ 2025-11-21 22:03:00 : [BOWERRL @ 2025-11-21 21:58:00 -> BNDSGRN @ 2025-11-21 22:03:00]
2025-11-21 DN501 : 1 = 800210

For some reason this changed during the day and it ended up on 5Y46 with 800205, getting to Bounds Green later than originally planned.

Seems so obvious now that you've explained it, thanks !

Peter Hicks

unread,
Nov 22, 2025, 5:48:16 AM (6 days ago) Nov 22
to openrail...@googlegroups.com
On Saturday, 22 November 2025 at 10:37, Roy Doyle <bob....@gmail.com> wrote:

So this one message refers to a single service (5Y46) and all of the moves that go to make it up. Each of the moves is represented by the sequence of Allocations - the message shows all of the moves, possibly with joins and/or splits, and/or direction changes.

That's correct - the whole schedule should have alloactions throughout, and adjacent pairs of allocations may or may not have different vehicles.  For example, a Euston - Crewe service may be formed of the same Class 350 unit throughout, and you'll get an allocation Euston - Watford, Watford - Bletchley, Bletchley - Rugby, etc. without the actual resources changed.

I think this repetition is some sort of older IT system thing.


Peter

Roy Doyle

unread,
Nov 22, 2025, 5:58:30 AM (6 days ago) Nov 22
to A gathering place for the Open Rail Data community
Sounds plausible - it could be a hangover from TOPS, from the days when parcels vans were attached/detatched from services? Certainly interesting to pick through it all now though and try to piece together stock movements for the day!
Reply all
Reply to author
Forward
0 new messages