Yes. That is the point of a class-based system.
You could say the same thing about any other class. You can always find some example or someone’s preference that doesn’t perfectly match the class as written. So every class and sub-class is a compromise.
This discussion is a case in point. The shadow monk is clearly intended to fill the “ninja” niche, and covers almost all of the archetypal features. Assuming they’re clad in black, most folks are going to watch them do their thing and think “ninja.”
Are they your perfect iteration of a ninja? Apparently not. But neither is yours the same as anyone else’s. Thus, compromise.
We could be having the exact same discussion about wizards, rangers, barbarians, etc.
Edit: for a class-based system to work, you have to be able to settle on a broad archetype that is distinct enough from the other classes to make sense as needing an entirely new chassis. "Ninja" is not distinct enough from "monk" to make an entire class without a ton of overlap, but is distinct enough to justify a subclass. Thus, the shadow monk.
I am in the camp of "ninjas should be a background". To me, classes are a set of related game mechanics, e.g., weapons, or martial arts, or stealth/infiltration/deception, or arcane magic, etc… as far as historical ninjas go, they are a mix of the first three, and if we throw in folklore, they usually include the fourth as well. To me, this is a clear case of why the system provides multi-classing: it is clearly the best way to represent the wide range of abilities, and differences of specialization, across individuals.
So classes are useful mechanically, for sure, but making ninjas into classes is a category error, IMHO. Ninjas fit better in the same category as nobles and criminals.
Should there be a criminal class? I’m sure someone could come up with one, but personally I don’t think that’s a good idea. Rogues are of course a great fit for being criminals, but the criminal underworld needs more than that. An "enforcer" kind of criminal might be best served by being a fighter, while a Far West-style caravan robber who often lives in the desert and only occasionally goes into town for a drink or three might be best served by being a ranger. But all of them are criminals.
For ninjas, I think it’s the same thing, and for that reason WotC did well to not have anything called ninja in the official books…
Ultimately, what is a ninja is a decision best left to the DM.
- In their setting, are ninjas the members of a unique and specific sect that churns out shadow monks, all of which have exactly the same abilities, as if they came out of an assembly line? If yes, then in that setting, ninja might mean shadow monk.
- Whereas if the setting is more of a historical Japan with shoguns, samurais and ninjas, then maybe these are three backgrounds (perhaps variations of noble, soldier and criminal, with tweaks here and there), and for each of the background, players can pick any or most classes.
- And finally, if it’s more of a high fantasy Naruto-type setting, then again the class choices should be pretty much wide open. You have open hand monk / fighter multi-class like Maito Gai, gishes like Kakashi, you have cleric/paladins like Sakura and Tsunade, you have probably Sorcerer dips all over the place with access to custom spells for the bloodline abilities (I’ve been thinking about the Sharingan lately… IMHO it would be ideally modeled as a spell, or more likely a series of spells, but I digress), and on and on.
Can ninjas be a single subclass? Yes, in the first of the three settings described above, it’s totally fine. But is that a sufficiently universal interpretation to be worth printing it as such in a book? In a campaign setting book, maybe. But in a generic splatbook? I don’t think so.