PinnedPinnedPrivate
buttondown.email

标签系统

标签系统看似只是给内容贴名字,实际是在设计一种可查询、可组织、可演化的元数据语言。最简单的标签由名称唯一标识,容易实现,但会遇到同义词和拼写差异;标签别名可以把多个说法归到一个规范标签下。子标签把标签放进层级结构,查询父标签时包含子标签内容,但要处理循环、防止冗余,并决定用户能否只查父级或叶子。更复杂的 DAG 标签允许多个父级,表达力更强,查询语义也更模糊。智能标签不靠人工分配,而是按规则自动归类,例如无坚果食谱,但规则之间可能产生逻辑悖论,计算成本也高。哈希标签把标签嵌入正文,适合社交发布,却难以表达空格、别名和额外元数据。键值标签适合云资源、迭代计划等技术场景。设计标签系统时,必须先弄清谁在打标签、谁在查询、标签是否会被滥用,以及结构复杂度是否真的值得。