Steve Frécinaux

UEO : structure des données

Je pense avoir trouvé une structuration satisfaisante pour mon projet de gestionnaire de contenu. Cette structure repose sur des fichiers de formats divers pour le contenu en tant que tel (comprendre par là les billets/articles ainsi que les fichiers qui sont appelés dedans, donc les éventuels objets, images, etc.) et sur une base de données pour les métadonnées (par exemple, une table reprendra toutes les infos concernant une publication, ainsi qu’un “cache” évitant de réanalyser les divers fichiers composant la publication, une autre table reprendra les updates d’un billet, etc.).

Les diverses sections seront gérées elles aussi via une autre table (une publication pourra ainsi se retrouver dans plusieurs sections du site). Les “reliures” dont je parlais précédemment étant a priori des publications comme les autres, seront gérées dans la masse.

Et les informations “statiques” seront gérées dans un fichier ou une table à part. Ces informations reprennent des trucs comme édito, accessibilité, “who is he”, qui pourront ainsi bénéficier d’une adresse “statique” tout en pouvant aussi bénéficier du système de gestion des différentes versions d’un fichier.

Les commentaires seront stockés dans une dernière base.

En ce qui concerne la facilité de synchronisation, j’ai décidé de me limiter aux fichiers qui sont le plus susceptibles d’être déplacés, c’est à dire les publications en tant que telles. Je garderai aussi le RDF pour la gestion de cette synchronisation.

Je pense que de cette façon je rejoins tous les objectifs que je me fixais plus bas, tout en simplifiant grandement la mise en place de ce système (une bdd est infiniment plus souple et aisée à gérer qu’une tripotée de fichiers) et ses performances (le cache permettant entre autre de ne pas réanalyser à chaque fois les fichiers, mais aussi de mettre en place un moteur de recherche, et ce de façon simple).

J’aurais voulu montrer aussi un schéma de la base de données, mais malheureusement je n’ai pas trouvé de logiciel permettant de le faire de façon simple et efficace, et je n’ai pas trop envie de lutter avec des programmes non adaptés.

Je vous tiens informés.

Au fait, sachant que chaque archive est caractérisée par une url unique (permalien), est-il utile d’ajouter un champs de type ‘auto_increment’ à la base, ou vaut-il mieux se servir du champs ‘permalien’ comme clé primaire (sachant que ce permalien doit être unique) ?