|
|
|
|
|
# Motivation
|
|
|
|
|
|
Pour plusieurs projets web de l'IN2P3, notamment un catalogue de tutoriels et une
|
|
|
collection de références bibliographiques, nous souhaitons disposer d'un système
|
|
|
d'étiquettage à la fois simple et efficace. Ce projet prend en charge la partie
|
|
|
commune liée aux étiquettes. Il sert par exemple au projet [CodingPool](https://gitlab.in2p3.fr/MaitresNageurs/README/CodingPool/wikis/home).
|
|
|
|
|
|
# Système d'étiquetage
|
|
|
|
|
|
Les étiquettes seront potentiellement nombreuses, organisées dans un arbre, et porteront sur différents critères orthogonaux. Par exemple, pour des tutoriels :
|
|
|
* pédagogie : plongeon (tutoriel de durée courte), longueurs (long)
|
|
|
* origine : intérieur (IN2P3), extérieur (autres).
|
|
|
* pré-installation : docker, virtualbox, manuelle, aucune.
|
|
|
* thématique : langage de programmation, conteneurs, vectorisation, calcul, etc.
|
|
|
|
|
|
Un utilisateur du site doit pouvoir filtrer les objets listés en combinant les étiquettes (je veux les objets qui ont l'étiquette A et la B mais pas la D). La colonne de gauche pourrait lister les étiquettes disponibles de plus haut niveau, et au fur et à mesure de leur sélection, mettre à jour dynamiquement une liste des seules étiquettes encore discriminantes.
|
|
|
|
|
|
# Edition des données et méta-données
|
|
|
|
|
|
L'édition de la structure d'étiquettes doit être réservée à une catégorie
|
|
|
d'utilisateurs avec des privilèges élevés. La difficulté consistera à gérer
|
|
|
l'impact sur la collection existante d'objets étiquettés.
|
|
|
|
|
|
Quand une étiquette est supprimée, est-ce qu'on l'enlève simplement des
|
|
|
objets qui la possédaient ?
|
|
|
|
|
|
# Look & Feel
|
|
|
|
|
|
Le graphisme relève du site "client". Donc l'implantation des étiquettes
|
|
|
doit être la plus adaptable possible sur ce point.
|
|
|
|
|
|
# Implantation
|
|
|
|
|
|
Par rapport au premier prototype réalisé, une question qui se pose : faut-il
|
|
|
précalculer toutes les étiquettes induites d'un objet, et quand, ou bien le
|
|
|
faire au vol ? L'important est d'obtenir un site réactif... donc probablement
|
|
|
qu'à un moment, il faudra précalculer.
|
|
|
|
|
|
# Pistes de fonctionnalités optionnelles
|
|
|
|
|
|
Une fois le site de base en place, on peut imaginer de nouvelles fonctionnalités
|
|
|
mises à disposition des utilisateurs :
|
|
|
* Pouvoir avoir des sélections "négatives" : c'est à dire sélectionner une
|
|
|
étiquette qui ne doit pa sapparaitrte dans les objets ?
|
|
|
* On a vu qu'il peut y avoir plusieurs types d'étiquettes... est-ce qu'on en tient
|
|
|
compte dans l'interface ?
|
|
|
* Pouvoir dérouler les sous-étiquettes d'une étiquettes dsicriminantes ? |