/data get entity @s
Another possible implementation I've found is a slight change in the behavior of the /poketest command. In my testing, attempting to detect a Mudkip, and apply a score of 1 if true to a dummy scoreboard objective, I used the command
/execute store result score @s PokeHave run poketest 1 mudkip
If the behavior was coded slightly different to store a 0 on failure to find an appropriate spec, that would essentially introduce this feature as well through these data store commands. In this method, if a Pokemon is not in the slot at all, /poketest fails to find anything, and results in a 0. But a present Pokemon with the incorrect spec still runs the command, and outputs a 1 even when the result is the Pokemon does not match a species spec.