>> If something is a tag, then you should be able to apply multiple tags to something.
> Well you sort-of can do that. Consider how many packages have tag "Tests" in it. They don't need to be globally unique and it makes sense to use the very same tag in different packages... so at least for me tag is perfectly fitting name.
If you could use Tags as tags, then you could have this
Car ->��Model
CarTest ->��Model,��Tests
CarFactory -> Factories
CarFactoryTest -> Factories,��Tests
Thus, you could browse different groups of classes anyway you want:
Has tag: Model
Classes: Car, CarTest
Has tag:��Model, no-Tests
Classes:��Car
Has tag:��Tests
Classes:��CarTest, CarFactoryTest
Has tag:��Factores, Tests
Classes:��CarFactoryTest��
Imagine then that you could also make tags to show which classes implement a certain Pattern, so now you could browse different implementations of a specific Pattern all accoress your image.
Tagging in any domain is an extremely useful feature.
So is adding notes/comments, but that's another topic.