The tagging system doesn't support (as far as I know) a tag to be "separated" into two tags. For example, the Flex tag on SO currently has questions on Flex and Flex. I'm sure there are more tags that have this problem. How would you suggest splitting tags in this case?
It wouldn't be the first time where we took a tag, and renamed it to be more specific. The '
code-golf' tag used to be just '
golf', but after I found out that someone had tagged their golfing question ( as in the sport ), with the
golf tag, I asked for it to be changed.
My suggestion is that if there aren't very many that are referring to gnu flex, for the tag to just be moved wholesale to the '
adobe-flex' tag. Then go through and remove the tag for any questions that actually referred to the gnu flex. The beauty of this solution is that other users will notice the problem and retag some of the questions for you.
If there are many of both, then my suggestion is a bit more time consuming. Go through all of the questions tagged '
flex', and for the ones for adobe flex, tag it '
adobe-flex', and tag the other ones '
gnu-flex', until there are none tagged '
flex'. Like I said, time consuming.
Hopefully when you are done, nobody will use the '
flex' tag. It seems to have 'stuck' for the '
golf' => '
code-golf' retag, there currently aren't any tagged '
In this case, it could be fairly straight forward to separate them, most of the ones referring to Adobe flex, usually have the word Adobe, somewhere in the question it-self. So you could, for example, have a special tag splitting feature, that takes the tag to split, the two tags to split it into, and a regex, or two, to determine which questions go into which tag.
I doubt that this feature has been created, but I think it is doable.
Now for whether there is even a problem, I think there is. The main point of tagging questions, as I see it, is for people who answer questions, to be able to find questions they can answer. If everything under the sun has the same tag, that to me is the same as not having a tag at all.
Having them under the same tag is a source of confusion, and grief that we can very easily eliminate, by moving them into separate tags. We could just move out the ones referring to the flex lexer, but what is to stop a new user from misusing the tag? If a new user comes and asks a question, they will see the '
flex' tag, and the '
gnu-flex' tag. They will probably not even realize that the '
flex' tag does not refer to what they think it does, and use both tags. Which is essentially the same as not even doing anything.
I do not think we should have any tags that could be mistakenly used for more than one thing. Any tag that can be mistakenly used, will be mistakenly used. So unless you actually want people to use the wrong tag, they should be specific enough that there is little chance of them being mistakenly used.
The question body asks about the Flex-specific case, but the title asks about the general case. Since the existing answers primarily address the specific case, I'll answer for general:
Post a separate question here on MSO for each ambiguous tag. These issues actually come up frequently enough that we have the tag ambiguous-tags here to describe them. (Even the Flex-specific case has come up at least three times.)
Every individual case will be different; some will have two meanings with roughly equal popularity/importance; others will have multiple meanings with one clear "dominant" meaning; and yet others will have one legit use and one inappropriate use (e.g. using). We need human subject matter experts to decide how to split things.
(That's "human [subject matter experts]," not "[human subject matter] experts.")
I don't think there's any general solution. In your particular case, I'd suggest retagging the Flex lexer questions
flex-lexer, mostly because they'll be fewer and the people asking questions about it will be smarter and easier to educate, whereas there's no chance of ever getting the horde of Adobe Flex users to change their behavior.
Now that we have tag wikis, it would be nice if we could designate a list of ambiguous tags that would be rejected from being set. The tag wiki summary would serve as the error message, and could suggest the proper unambiguous tags to use, and high rep users could then maintain the list of suggestions.
For an example, the
capturing tag. I've recently retagged all 7 or so questions that used it.
A few ideas:
- Note the ambiguity and preferred replacements on the tag wiki.
- Rename a few questions to illustrate.
- Ask for the original ambiguous tag to be blacklisted.
Tags are folksonomies, they adapt to new categories but their use has to be flexible and not dictated. I think blacklisting should be used very sparsely because of this. Documenting multiple meanings is a much better approach.
If StackExchange were to grow support for tag ambiguity, I would suggest:
- add a relation between ambiguous tags and more specific tags
- streamline edits that replace an ambiguous tag with a specific one (no need to vote on the edit, do mass disambiguation by checking questions in a list)
- suggest the specific tags when auto-completing