I think that it comes down to whatever the motion control software accepts! However, it does seem that gcode is a bit flexible about this kind of thing. For example, you can put the coordinates in in any order, and I have a feeling that the G53 can be anywhere on the line. From memory, I think I use G0 G53 X~ Y~ because that seems logical to me, but I don't think it matters. That's all true for Mach3 and LinuxCNC, anyway, but some of the proprietary motion control systems might have their own interpretation.