Sign Up Sign In

ISO: hierarchical tags


One thing sorely missing from Mi Yodeya is a tag hierarchy. For example, having the Book-of-Judges tag be a sub-tag of the Books-of-the-Prophets tag, so that keyword searches among the latter will find also questions in the former (or will optionally). As another example, having the labor-of-writing tag be a sub-tag of the labors-of-sabbath tag. This would allow someone to find all questions about a fine point of the labors of the sabbath even if they may have been tagged with a specific labor's tag.

It doesn't seem like Codidact — or at least not Judaism Codidact — has that now. I would like to put it in as a feature request. Any chance? Please post replies below if you can provide info on the likelihood of this happening; but also your opinions on why this would be a good or bad idea.

Why should this post be closed?


3 answers


This is an interesting idea, and we're looking into it. Tag hierarchy isn't something we'd considered when we designed how tags work, but there are some changes to tags needed soon anyway so it may well be possible to add hierarchies at the same time.

So... you're right in your observation that it's not available right now, but we'll add it to the list and hopefully change that.

Update: 2020-07-01
This is available! Tags have had a refresh, proper tags lists and tag details pages are available, and tags can have parents and children. A tag's page will allow you to see posts from either that tag alone, or that tag and its children.


Wow, thanks! That was much faster than I expected. Monica Cellio 5 days ago

Wow, thank you! msh210 5 days ago


Let's check some functional requirements. :-)

I'm envisioning tag hierarchies as an overlay, thus:

  • All tags would remain in the tag set and could be individually chosen (i.e. both leaf and non-leaf nodes are available as tags on posts).

  • Tags could be designated as children of other tags, but there would be no requirement to have a single overarching tag tree -- use the relations where they make sense and don't where they don't.

  • The page for an individual tag would indicate its parent and/or children, if any (as links to those tags).

  • Searching on a tag would search the tag and all of its children.

The tools for managing this are TBD and would probably be "workable but not pretty". There wouldn't (yet) be tools for viewing tag hierarchies graphically.

Would this meet the basic need? This seems to me like it would help a lot, but I don't want to just build what I think we need -- I want to check that with others.


That sounds about right to me fwiw. I think one additional requirement would be that the code either enforces no tag loops or accounts for their existence when (e.g.) searching. msh210 7 days ago

Oh good point; loops could happen and we'd want to handle or prevent that. Monica Cellio 7 days ago

I should note that I meant loops of two varieties: A is a descendant of itself, or A is a descendant of B via two different routes. Even the latter case may lead to bugs if care isn't taken; e.g. the same post may appear twice in search results for B. msh210 7 days ago

Probably easier to write the search algorithm to not get caught in loops than to create the ideal UI way to stop people from making them. Isaac Moses 7 days ago

I agree with Isaac. I'm imagining search rewriting the search query to expand children, so if you search on [a] [b] and [b] has children [c] and [d], the actual search would be [a] [b] [c] [d]. When considering adding a tag to the list via hierarchy expansion, if it's already there we stop processing that branch. Monica Cellio 7 days ago


Yes yes for hierarchical categories, here and everywhere. A good hierarchy help structure information; just imagine being able to browse and drill down to more and more specific groups of questions and answers.


Like any library, this site offers tons of great information, but does not offer personalized, professional advice, and does not take the place of seeking such advice from your rabbi.

This site is part of the Codidact network. We have other sites too — take a look!