Multiple tags on music in iTunes?
While it won't satisfy the hierarchical feature you'd like, the Grouping (or even the Comment) field in iTunes could be used to hold tags. Ideally you would want to do something to make the tag always unique by separating by a comma or say &lt;> around the word. You can then use a Smart Playlist to filter for this tag. (Grouping contains).

There is an unfinished program called QuickTag that leverages that ability and makes it easier to tag.

There is also a hint on MacOSXHints.com that shows how you can grab Last.FM's tags and apply them to the current playing track. You'll need to modify their script slightly - namely to use the grouping or comment field (and match anything special you've done, eg. &lt;>s around the word) instead of the genre. The alternative Perl version worked faster than the original script for me.