When organizing information it is common to use either a hierarchy or tags. An element in a hierarchy is ordered within a predefined category and relates to other elements as above, below or at the same level. The only direct link between elements in an hierarchy is its immediate superior and the elements subordinates.

Tags on the other hand are non-hierarchical keywords assigned to an element. There are no links between tags, and elements can have tags on different hierarchical level which in a strict hierarchy would not be possible.

Paul Heymann and Hector Garcia-Molina wrote a technical report in 2006 on the tag hierarchy topic with the title "Collaborative Creation of Communal Hierarchical Taxonomies in Social Tagging Systems". They came to the conclusion that it is possible to have relations among tags in several hierarchies, linked by top level connections and noisy edges (see image from their paper):

Latent Hierachical Taxonomy. Haymann and Garcia-Molina 2006

Fig 1: Latent Hierachical Taxonomy. Haymann and Garcia-Molina 2006

At first glance this is a graph representation, which could very well be used on tags in any tagging system. It would place tags in a strict hierarchy (when appropriate) and provide noisy edges or top level connections when linking relational between different hierarchies.

From my point of view it could be used to improve navigation not only using the standard hierarchical navigation and/or tags, but also use a tag hierarchy. It would place tags within a context, which from a usability perspective could improve users ability to find information.

But from what I know, the implementation of this or similar model have not yet been done. Have there been an implementation of a tag hierarchy with graph edge relations?

  • Are you asking for the best way to visualize a taxonomic tree?
    – dnbrv
    Apr 18, 2012 at 20:20
  • @dnbrv If it has graph edge relations, it would be well suited as an answer. Apr 18, 2012 at 20:30
  • stackexchange has tags and tag synonyms, which would be your noisy edges. no hierarchy though.
    – Erics
    Apr 19, 2012 at 2:23
  • @Erics Not really. The tag synonym replace one tag with another more accurate tag. The noisy edge is used as a relation between different hierarchies, and both tags are still valid. At least it is my interpertation of Heymann and Garcia-Molinas work. Apr 20, 2012 at 8:09

4 Answers 4


My company's product uses several entities that work like tags and form graph-ish tree structures, much like your example shows. (The product isn't public, so I can't get too detailed, sorry.)

From a UX perspective, the main win that we've found is that the system is very flexible and can often describe more complex subject matter than a flat tag list or a simpler tag tree, which in the problem space we are in is valuable.

The con's with a system this sophisticated, however, are substantial. (In fact, I am constantly trying to figure out how we can get rid of the complexity b/c of user confusion.) Users understand flat lists automatically, trees with some effort, and graphy-tree-thingies with much more effort.

highly scientific graph

A few key points:

That said, if you control the data structure for the user, and the user never needs to understand how it works in order to use it, you might be helping them out more than hindering. On the other end of things, if you expect it to be user managed, expect big trouble.

I often find that when you find taxonomy getting complicated, you are better off funneling users towards search, sort, and/or filter.

  • +1 for a great answer which give me a lot to think about. The scale of the diagram (breathing 2 tax law) for cognitive effort is illustrative and funny making it easy to imediately know how to interpret it. The complexity of this model might be the reason why it hasn't that many implementations. It failed and was probably discarded before release. May 1, 2012 at 18:59
  • Is Swedish tax law as horrendous as in the US? In our case, we started out hoping any or all of our users could manage these complex structures, but over time we have narrowed the management down to our employees and qualified super-user types. For typical end-users just consuming the structures, it's not as important that they understand the model, but it can still causes some confusion. May 1, 2012 at 19:18
  • 1
    Swedish tax laws are like the Matrix: "Some can be broken, others could be bent". But more serious, it is a big debate since research show that the effort of getting taxes right is greater than to run your own one-man business. This keeps people from starting their own company. One also have to pay taxes in advance on estimated sales for upcoming month. Nuff said on taxes. The confusion part is what interrest me, and might be a start for a research project (if I ever aim towards a Ph D). My idea was to make it easier through tags in context, not more confusing. May 1, 2012 at 19:28

Book metadata generated by librarians includes subject headings, which are a hierarchic controlled taglike system. The main implementation (Library of Congress Subject Headings, or LCSH) is clumsy, but the library community has been working in this area for decades. Check out http://id.loc.gov/

  • This is close. I see that one element is part of different hierachies, represented as instancs of links on one element id.loc.gov/authorities/childrensSubjects/sj96006387.html. There is also a validation string available which could be seen as a tag, but those strings "do not have broader, narrower, or related terms". Am I missing something? Apr 20, 2012 at 8:30
  • The children's headings apparently are not set up on that site with broader/narrower, but the mainstream are, including visualization: try id.loc.gov/authorities/subjects/sh85029479.html
    – yitznewton
    Apr 20, 2012 at 14:12
  • 1
    This is derived from a 1960's metadata format called MARC, see especially Tracings and References at loc.gov/marc/uma/pt1-7.html#pt4 God help us all
    – yitznewton
    Apr 20, 2012 at 14:14
  • LOL! Now we're getting somewhere with this relations, that last link made it more clear, +1 for that. Might be that the loc-web site needs more work to solve on User Experience issues, don't you think? ;-) Apr 20, 2012 at 18:08

I don't know if you're asking for some tool to make the visualization, but maybe here's an answer.

Well, the InfoViz/TheJit library for JS does exactly what you're asking for. It takes a hierarchical JSON feed.

  • Very nice link and good use on visualization, but I don't see the links between different hierachies and the noisy edges. Apr 20, 2012 at 8:12

I'm still not sure I understand what is being asked...for an example implementation of drawing a visual representation of the taxonomy?

That being said, my product does exactly this. It asks the data-model-builder to organize information along physical lines (in my case, see isa-95.com), while often the person using the system wants to see a comparison along functional lines. The example would be the difference between asking for a "pump" (an object in the hierarchy), or asking for objects that contain a "flow" variable, it might include pump, valve, pipeline, etc.

Because of these two common uses, we allow both navigation by hierarchy and by tag.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.