Both roads can coexist, a proposed feature and some flexible tools as tags to let the community create a spontaneous usage pattern.
PS: I my opinion tags can create quite chaotic and spammy structure if the user is completely free to create and use them.