You are right that a chord without a root can usually be interpreted as a different chord, and without any context, nobody can tell which chord is meant. So it is mainly the musical context that identifies the chord. Take as an example a part of a simple blues progression in C:
| G7 | F7 | C7 | C7 |
If in this progression you replaced the C7 chord by an Em7(b5) chord, nobody would hear a half-diminished chord with root E, but what people would hear is a C9 chord, even though the root is missing.
Also note that on certain instruments (e.g., on the guitar) it is very common to leave out the root of more complex chords in order to be able to add more tensions to the chord (usually there are only 6 strings and you have only five fingers if you also use your thumb). As mentioned above, the musical context will usually make the chord identifiable, even without the root. In some cases, another instrument (often the bass) would add the root to an incomplete chord played in a higher register.