我一直认为标签与普通的文件夹层次结构模型完全不同。我正在构建一个需要标记来标记数据集的系统。我们已经完成了数据库设计(相当简单的模型),但围绕在标签世界中仍然保留层次结构概念的价值引发了一场争论。
以SOF为例,我看到的唯一等价物是在一些标记名中使用-,比如jquery,jquery-ui,jquery-ui-dialog,这样就没有固有的建模关系(只是一个命名约定)。
关于如何以及是否应该在标签世界中存在层次结构,是否有任何关于最佳实践的传统智慧?
发布于 2010-10-10 00:38:25
我开发了一个包含分层标签的门户。我可以向您保证,这是一个很难处理的问题:)
然后,我的解决方案转向一种混合方法,在这种方法中,标签可以独立处理,也可以分层处理,但它们位于两个不同的名称空间中。
这是因为一些标签可以被视为其他标签的父级的子级,而其他标签则不能,例如,dialog标签是一个也独立于jquery的概念,因此具有这两个标签的内容jquery dialog隐含地具有所需的关系。
Hierarchical应该用来表达概念之间的一种继承关系,例如。collections -> trees, lists, maps,其中trees标记可以有效地包含在collections标记内。
在您的示例中,dialog和jquery是正交且不可比较的,因此将一个子级作为另一个子级是没有意义的。
发布于 2010-10-10 00:53:55
名称"jquery“、"jquery-ui”、"jquery-ui-dialog“不是标签,而是文件结构路径的等价物,本质上是分层的。
如果你的数据很容易进行权威性的分类,那么就以树的形式呈现出来。如果用户只看到几个他们自己的标签(如Gmail中的标签),您可以对标签列表进行排序和嵌套,并为每个用户保存该结构,独立于标签本身。如果有很多标签具有强大的内容分布力(例如,如果10%的标签描述了90%的内容),那么标签云可以提供帮助。
简而言之,这取决于数据。
发布于 2012-10-24 05:36:01
与集合相比,层次结构通常有一个缺点。想想书签和tag-bundles like delicious.com吧。我更喜欢使用sport和newer-than-1-week以及( english-language或chinese-language )和not ( soccer或boxing )来搜索集合。
https://stackoverflow.com/questions/3873777
复制相似问题