Since version 2.1, XFree86 will initialize its keymap from the Linux keymap, as far as possible. For Mod the LeftAlt key is taken, unless RightCtl was defined as ModeShift or ModeLock, in which case RightCtl is taken, or RightAlt was so defined, in which case RightAlt is taken. This determines how the 4 XFree86 meanings of a key are selected from the 16 Linux meanings. Note that Linux today does not distinguish by default between the two Ctrl keys or between the two Shift keys.
X does distinguish.
Now the kernel keymap is read and the usually obvious corresponding X bindings are made. Next, the definitions in the Xconfig file are used. Nothing, X does not have such a concept.