Beware of conflating individual attributes themselves with objects that can have those attributes.
For instance, "happy" and "angry" are two different emotions. Their individual definitions might be mutually exclusive, but that doesn't mean that their existence is mutually exclusive. It is possible for someone to experience both emotions at the same time.
Hello, My name is Iñigo Montoya. You killed my father. Prepare to die. — YouTube
You ask: "how could we have mutual exclusion if we want to be able to define terms like "not happiness" and "anger" in the same giant classification?"
If you want to be able to do that, you can't, at least not in a useful way.
A properly defined classification system requires that all elements directly within a larger class be mutually exclusive and collectively exhaustive (MEACE)
So, if you have a general "emotions" class, then "happy", "sad", "angry", etc. will all be members of that class.
If your system requires a "not happy" classification, then in order to be MEACE, then the "emotions" class can have only two members: "happy" and "not happy", with all the other emotions being members of one of those two classes.
It would work, and it meets the MEACE requirement, but it would be a much less useful system than if it didn't require the "not happy" class.
And, if you wanted it to have a "not angry" class too, you would be out of luck.
It's simply not possible to classify emotions that way. Some emotions would have to be in "not angry" and in "*not happy" at the same time, and that's not allowed.