J'ai toujours vu les tags comme complètement différents du modèle de hiérarchie de dossiers normal. Je construis un système qui nécessite un marquage pour marquer des ensembles de données. Nous avons eu le design db tout a fonctionné, (modèle assez simple) mais un débat a surgi autour de la valeur de toujours avoir des concepts de hiérarchies dans un monde d'étiquettes. Sur les SOF, à titre d'exemple, le seul équivalent, je vois une partie de cela en utilisant -
dans certains noms de tag comme le tagging; Il n'y a donc pas de relation inhérente modélisée (juste une convention de nommage). Y a-t-il une sagesse conventionnelle des meilleures pratiques sur comment et si les hiérarchies devraient exister dans un monde de marquage?Le marquage doit-il avoir des hiérarchies?
Répondre
J'ai développé un portail qui impliquait des balises hiérarchiques. Je peux vous assurer que c'est un gâchis à gérer :)
Ma solution s'est ensuite déplacée vers une approche hybride dans laquelle les balises peuvent être autonomes ou bien contrôlées, mais elles résident dans deux espaces de noms différents.
Ceci parce que certaines peuvent être considérés comme des enfants de parents d'autres balises tandis que d'autres ne peuvent pas, donc par exemple étiquette dialog
est un concept qui est également indépendente de jquery
donc un contenu avec les balises jquery dialog
a implicitement la relation nécessaire.
Hiérarchique devrait être utilisé pour exprimer une sorte d'héritage entre les concepts, par exemple. collections -> trees, lists, maps
dans lequel une étiquette trees
peut être efficacement incluse à l'intérieur d'une étiquette collections
. Dans votre exemple, dialog
et jquery
sont orthogonaux et incomparables, donc cela n'a aucun sens de faire un enfant d'un autre.
Les noms "jquery", "jquery-ui", "jquery-ui-dialog" ne sont pas des balises, mais l'équivalent de chemins de structure de fichiers, hiérarchique par nature.
Si vos données sont faciles à catégoriser avec autorité, présentez-les sous forme d'arborescence. Si les utilisateurs ne voient que quelques-uns de leurs propres tags (comme dans Gmail), vous pouvez permettre de trier et d'imbriquer la liste de tags et de sauvegarder cette structure par utilisateur, indépendamment des tags eux-mêmes. S'il existe un grand nombre de balises avec répartition du contenu (par exemple, si 10% des balises décrivent 90% du contenu), un nuage de balises peut vous aider.
En résumé, cela dépend des données.
Les hiérarchies ont en général un inconvénient par rapport aux ensembles. Pensez aux signets et tag-bundles like delicious.com. je préfère rechercher un ensemble en utilisant sport
et newer-than-1-week
et (english-language
ou chinese-language
) et non (soccer
ou boxing
).
- 1. Marquage des boutons UIAlertView
- 2. Gestion des hiérarchies de données dans le code
- 3. int (id) ou des hiérarchies basées sur le texte?
- 4. CSS - Hiérarchies de classes?
- 5. Représentation efficace des hiérarchies dans Hibernate
- 6. Marquage des paramètres comme Nullable
- 7. Comment implémenter des hiérarchies multiniveaux dans la gestion des utilisateurs
- 8. Collections pour les hiérarchies
- 9. Marquage des variables d'instance @private
- 10. svn branchement et marquage des bonnes pratiques
- 11. C++: éviter la double entretien dans l'héritage des hiérarchies
- 12. Le marquage/le contenu du marquage a changé depuis la dernière fois que l'utilisateur l'a vu
- 13. hiérarchies objet comprimant dans JavaScript
- 14. Marquage transparent jQuery?
- 15. modèle 3DS chargement - arbre/hiérarchies
- 16. NHibernate - Mappage du marquage des entités
- 17. Marquage des paramètres doubles avec P/Invoke
- 18. Marquage d'un objet comportant des zones d'objet
- 19. Marquage des éléments modifiés dans DataServiceCollection (OData)
- 20. Marquage CALayers dans l'iPhone
- 21. Qu'est-ce que le marquage libre?
- 22. Représentation de hiérarchies arbitraires dans WADL
- 23. Conception de hiérarchies de threads dans le noyau dans CUDA
- 24. Comment puis-je interroger des hiérarchies avec LinqToSQL?
- 25. Solution de marquage Rails
- 26. Optimize « marquage » regex
- 27. Génériques et hiérarchies de classes parallèles
- 28. Comment gérer les hiérarchies du référentiel GIT?
- 29. Marquage d'un repo git?
- 30. marquage POS en allemand