With tags, it's possible to search questions via these tags, or categories, and this has a lot of purposes throughout the site, from searching, categorization, etc.. My question is: How exactly do tags work with regard to synonyms? If I create a question with the tag "kill", when I post it will the tag automatically be changed to murder? Or is the system a "read-only" style in that it only connects search terms together for making searching an easier task? (I.E. a search for 'kill' will return all questions with 'kill' AND 'murder')
What then happens is based on whether or not there exist instances of the synonym tag in the system.
If the Synonym Tag still exists
- Searching for either tag will show the results of that tag.
- Trying to add the Synonym Tag to a question will result in the Master Tag being applied (i.e. adding kill will actually add murder).
- Editing a question that currently has the Synonym Tag will remap it to the Master Tag on save. Until then, the Synonym Tag remains untouched.
If the Synonym Tag no longer exists
- Searching for either tag will only show the results of the Master Tag. So, searching for
[kill]will give you the page for murder, same as if you searched for
- Trying to add the Synonym Tag to a question will result in the Master Tag being applied
You'll notice that the latter scenario is far more optimal than the former. The essential aspect is, making a tag synonym only directly affects the future. It will not alter any existing instances of the tag on its own, it is only through editing the posts that it generally happens. This still results in fragmentation of data until those changes are made.
This is why moderators also possess another utility - tag merging. Tag merging is the partner of tag synonyms, it causes all existing instances of a Synonym Tag to be silently renamed to the Master Tag. Essentially, tag merging only affects the past and present. So it is the combination of tag merging and tag synonyms that results in the correct flow.