Дизайн пользовательских интерфейсов и юзабилити: Вес тега
Я не знаток JavaScript, поэтому не буду показывать примеры и выкладывать куски кода, я просто попытаюсь донести саму идею.
Идея родилась достаточно давно, но решилась постучать в голову только после того, как купил я себе брелок от Артемия Лебедева™. А ведь действительно, мы ставим теги, но не показываем наиболее близкий к теме тег. Т.е. если имеем брелок - тег “брелок” будет значительно ближе к теме, чем, скажем “скважина” или “замок”.
Мысль такая - каждый раз добавляя тег отмечаем конкретный вес каждого тега. В итоге получается, скажем, тег “замок” - отношение 0.8, а тег “ключ” - отношение 1.2.
На практике это может выглядеть так - пишем теги в текстбокс, жмём утвердить, а дальше (по желанию) меняем вес тега:

или выделяя только цветом, не меняя шрифт

Меняем вес тега колёсиком мыши, причём в виде защиты от эмо и прочих самовыражающихся слоёв общества окончательный вес определять относительно веса других тегов.
Вот такая вот идейка.