On Ask Ubuntu we allow version tags ("12.04", "13.10", etc) so that, in questions is is relevant, people can specify which version of Ubuntu they are running. Now before you tell me Ask Ubuntu is going to hell for our lifestyle choice, we are not the only site to allow/encourage version tags. I'm not interested in your personal views over their merits at the moment.

Version-based tagging does cause some well-documented issues though:

  • They tend to under-describe the problem if they're the only tag used on a question
  • They're over-represented in popular/unpopular tag ratings
  • Version sub-tags (eg php-5.5) don't show in searches for related tags (eg "php", "php-5", etc)

A "software-recommendations" meta-tag might fall into some of the same flaws but be kept around as a necessary evil.

But in my mind, we can fix these things by "simply" defining some rules or constraints around certain tags. In a perfect world I would be able to:

  • Group tags together so that 10.04, 10.10, 11.04, etc could internally be collectively called "Ubuntu version tags".
  • Set a group so that its tags can't be the only tags there. This would stop somebody just using "12.04" as a tag and would make them pick a "real" tag.
  • In extreme cases —not Ask Ubuntu— require a tag from a group to be used (like on meta).
  • Exclude certain tag groups from popular tag look-ups
  • And by extension, exclude groups from the suggested tags placeholder text (ours is full of version tags)
  • Define a tag hierarchy so that somebody looking for "php" would also see results tagged with "php-5.4"
  • As an extreme bonus: If a given tag is used, ask follow-up questions. Want to use wireless tag, we'll need to know what wireless adapter you're using (link to how to look it up). Meta-tags like software-recommendations could also benefit from this immensely.

I realise that's a fair amount of work but it also improves tagging (and searching for tags) hugely.

  • Hmmm... I would worry that this would become a nightmare to maintain. There are already lots of issues with just maintaining the tags as it is. Commented Feb 27, 2014 at 14:52
  • It could be. Perhaps regex matches to define groups would make expansion easier... So for php: php-\d(?:.\d)?, for Ubuntu's versions, \d\d.\d\d, etc. But in most cases we're not talking about a new tag every other day. Ubuntu adds a release every six months. We could handle that manually fairly easily.
    – Oli
    Commented Feb 27, 2014 at 14:57
  • But, wouldn't we have two problems, then? ;) - Seriously, I am very wary of hierarchical organization, and especially when it's collaboratively and dynamically done. Commented Feb 27, 2014 at 15:01
  • 1
    @AndrewBarber I don't understand what the new problem is though. There's a buy-in fee, sure... But past that the amount it fixes strongly outweighs the running costs. I've given two examples of things this would improve, could you give an example of something it would make worse/harder?
    – Oli
    Commented Feb 27, 2014 at 15:08
  • I was making one of my typical bad jokes, this one regarding the quote Some people, when confronted with a problem, think “I know, I'll use regular expressions.” Now they have two problems. Commented Feb 27, 2014 at 15:17
  • 1
    I see! Sorry, it's been rather a serious day. That bounced right off me.
    – Oli
    Commented Feb 27, 2014 at 15:21
  • Just me being nitpicky "For questions completely specific to SharePoint 2010 and not past or future versions" is the tag except for all those tags on sharepoint.se, which you specifically says that you won't follow.
    – Braiam
    Commented Jun 9, 2014 at 17:02
  • Unless this has been conclusively settled somewhere else, I think the three cons mentioned should be fixed automatically once tag inheritance is introduced (I assume that this means strictly left to right asymmetric inheritance)- * under-describing a problem if only one version tag: if the culture of the website is to use specific version tags and relying on tag inheritance to bring those subscribed to the "aaa" tag to questions tagged "aaa-bbb", the tag has already served it's purpose. Commented Feb 13, 2017 at 22:42
  • If someone asks a python-3.5 question and it ends up being a question relevant to all python versions, it is still possible to modify the tag once the answer is found. It seems to me (naively?) that users should be encouraged to start with specific tags to start with. * over/under representation in ratings: allow only a certain level of the hierarchy to be represented in ratings (version numbers have to be the last in the hierarchy, of course). * search results - exclude the version-number level of the hierarchy to be from searches unless relevant Commented Feb 13, 2017 at 22:42

2 Answers 2


If I'm understanding your question correctly, this would be very useful on sites like Movies & TV (and probably Sci-Fi & Fantasy).

Right now M&TV has very strict rules against using director, actor, and genre tags unless the question is actually about that director, actor or genre. With only five tags allowed per question (which I think is perfectly reasonable), it's impossible to consistently include all of these sub-tags, or what could be considered Meta Tags, along with the title and what the question is actually about (plot explanation, dialogue, character, etc).

It's inherent in the title tag of a film which people are involved in the project and (to a lesser degree) what the genre is (genre can get a bit muddy in all but the most obvious cases), so there's no need to re-emphasize these in actual tags on the question but it does make for a less useful tagging favorites system. Yes, someone who loves Ridley Scott could simply add favorites for each of his films individually but this could make that less necessary.

With a hierarchy system, when we set up a tag for a film, we could also connect that tag with other important tags related to the film, such as director, actor/s, genre (maybe).

As an example, let's use Blade Runner.

The tag would be linked with tags that already exist: Ridley Scott, Sci-Fi

We could also create tags for people who don't have tags yet because the tagging rules are very restricted: Harrison Ford

The question here comes down to "Where do we stop adding sub-tags?". There are probably 4-6 major roles with actors of varying notoriety... but this is a question for M&TV Meta to decide, not SE as a whole.

Regardless of this, it would allow someone who searched the tag "ridley-scott" to return hits with all questions about all films by Ridley Scott : Blade Runner, Alien (and the rest of the series), Thelma & Louise - Which is probably what they wanted in the first place.

You could even add the option to the tag search to only include primary tags, to allow the user to only see answers actually about Ridley Scott (if any) rather than all his films.


I think a hierarchy (or "implies") should be relatively easy to implement. It doesn't require groups, but could used to implement groups by simply implying the same group tag. For example, the version tags mentioned would imply a tag "ubuntu-version" that is not to be applied directly, but gets implied by the different version tags. I think there is already a mechanism allowing to prevent applicatiopn of a certain tag, so this could be used to prevent the ubuntu-version tag itself instead of a tag implying it

Here's how the "implies" I envision would work:

  • If one of the tags given to a question is implied by another entered tag, the implied tag is removed by the SE engine.

  • When seeking for a tag, or when a tag is favoured or ignored, then any tag implying that tag is treated as if it were that tag, unless the implying tag is explicitly excluded.

    So for example, if on StackOverflow the tag c++11 is declared as implying the tag c++, and you favour c++, then also questions tagged c++11 are highlighted, unless you've explicitly put c++11 into your ignore list.

  • Implication is transitive. That is, if tag foo implies tag bar, and tag bar implies tag baz, then tag foo also implicitly implies tag baz.

  • The engine rejects any attempt to create an implication that would result in a cycle. That is, implications are enforced to form a DAG.

Any further functionality could then be implemented on top of this "implies" feature, or independent of it:

  • "Only one of this group": This could be a flag on the implied tag that it may not be implied more than once.

  • "May not be the only tag": This is actually an independent feature, as it applies to the single tag; however it might be implemented to be "inherited" from implied tags, so if ubuntu-version has that flag, then every tag implying ubuntu-version also automatically gets it.

  • Exclude from popular tag lookups: Again a feature that's independent, but might be inherited in the "implies" chain.

  • "Follow-up questions": This should not be tied to the "implies" system at all. For example a tag for a common wireless adapter would certainly imply wireless, but if "wireless" would generate the follow-up question "which adapter?" that definitely would not be appropriate to that adapter specific tag.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .