Hi
I don't recall the design decision as to why tagging works this way - possibly due to an early implementation that was going to use Lucene's native support for index counting (which we've since abandoned due to the inaccurate results from lazy cache updates).
It's probably something we should change when we revisit tagging throughout Share - hopefully sometime later this year as part of a general improvement sweep we're planning. Feel free to raise an enhancement request in JIRA, then you'll be kept informed of any updates.
Thanks,
Mike