标记应该有层次结构吗?

时间:2010-10-06 14:49:47

标签: tagging

我一直认为标签与普通文件夹层次结构模型完全不同。我正在构建一个需要标记以标记数据集的系统。我们已经完成了数据库设计,(相当直接的模型),但围绕在标签世界中仍然具有层次结构概念的价值进行了辩论。

在SOF上,作为一个例子,唯一的等价物是我在一些标签名称中使用-看到的一些内容,如标记; jqueryjquery-uijquery-ui-dialog因此没有固有的建模关系(只是命名约定)。

关于在标记世界中如何以及是否存在层次结构,是否存在关于最佳实践的传统智慧?

3 个答案:

答案 0 :(得分:4)

我开发了一个涉及分层标签的门户网站。我可以向你保证,管理起来很麻烦:)

我的解决方案然后转向混合方法,其中标记可以是独立的或以数据方式处理,但它们位于两个不同的命名空间中。

这是因为某些标记可​​以被视为其他标记的父级的子级,而其他标记则不能,因此例如dialog标记是一个与jquery无关的概念,因此具有两个标记的内容{ {1}}隐含了所需的关系。

应该使用分层来表达概念之间的一种继承,例如。 jquery dialog collections -> trees, lists, maps标记可以有效地包含在trees标记中的collections

在您的示例中,dialogjquery是正交且无法比较的,因此将另一个孩子制作成另一个孩子是没有意义的。

答案 1 :(得分:2)

名称“jquery”,“jquery-ui”,“jquery-ui-dialog”不是标签,而是文件结构路径的等价物,本质上是分层的。

如果您的数据易于权威分类,则将其显示为树。如果用户只看到他们自己的一些标签(例如在Gmail中),则可以对标签列表进行排序和嵌套,并为每个用户保存该结构,与标签本身分开。如果有很多标签具有内容的功率分配(例如,如果10%的标签描述了90%的内容),那么标签云可以提供帮助。

简而言之,这取决于数据。

答案 2 :(得分:0)

与集合相比,

层次结构通常具有缺点。 想想书签和tag-bundles like delicious.com。 我更喜欢使用sportnewer-than-1-week以及(english-languagechinese-language)而不是(soccerboxing)来搜索集合。< / p>