This allows anyone to add a parent, and it allows a tag to have multiple parents.
Be careful with this - this concept, known as multiple inherritance, usually leads to problems. For example, what's to stop a user from making circular references - e.g., two tags that are both parents of each other? This becomes particularly problematic when you attempt to leverage the hierarchy. If you search for games with a tag, does it return games tagged with child tags of the requested tags? Or, conversly, if you apply a tag to a game, does it also apply the parent tags? And if the answer to both of these questions is no, what does any of this accomplish?
Be careful with this - this concept, known as multiple inherritance, usually leads to problems. For example, what's to stop a user from making circular references - e.g., two tags that are both parents of each other? This becomes particularly problematic when you attempt to leverage the hierarchy. If you search for games with a tag, does it return games tagged with child tags of the requested tags? Or, conversly, if you apply a tag to a game, does it also apply the parent tags? And if the answer to both of these questions is no, what does any of this accomplish?