xterm is a terminal emulator. It has to pass a compliance test suite that ensures it correctly replicates the behavior of DEC terminals up through the VT220 (plus some VT320 features). Programs that do this at the protocol level have been called "terminal emulators" since forever ago; even 70s and 80s vintage physical terminals have been said to "emulate" other makes of terminal by interpreting their wire protocols.
It's all the other "terminals" for Linux, especially the libvt ones, Kitty, and Alacritty, that are more like shitty xterm emulators.
xterm hooks into the tty subsystem by creating a pseudoterminal, not into shared libraries. The handling of control sequences and the buffer is re-implemented in C.
Different kinds of emulators have different kinds of interfaces they emulate.
It's all the other "terminals" for Linux, especially the libvt ones, Kitty, and Alacritty, that are more like shitty xterm emulators.