TODO

Last modified by Thomas Mortagne on 2009/12/06 13:50

ETUDIER LA POSSIBILITEE D'UTILISER UNE BASE BIBUS ( http://bibus-biblio.sourceforge.net )

TODO

  • prévoir un système d'indexation pour accélérer la recherche

Tables

Schéma

Le shéma est au format et généré par DBDesigner (http://fabforce.net/dbdesigner4/)

Fichier DBDesigner

shema.png

Données

Technique

  • modification (table qui répertorie chaque modification faite par chaque utilisateur)
    • ''id_modification''  -- code de la modification 
    • ''fk_user''  -- code de l'utilisateur ayant fait la modification 
    • ''fk_table''  -- id de l'objet modifié (a coupler avec 'table')
    • ''d_typemodification''  -- type de modification indiquant si c'est une suppression, insertion ou modification de valeur 
    • ''table''  -- table modifiée 
    • ''fields''  -- champs modifié 
    • ''old_values''  -- anciennes valeurs 
    • ''newvalues''  -- nouvelles valeurs 
    • ''datetime''  -- date et heure de la modification 

Objets

  • user (utilisateurs et groupes d'utilisateurs)
    • ''id_user''  -- code utilisateur utilisé en interne 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''login''  -- identifiant de l'utilisateur 
    • ''name''  -- nom complet de l'utilisateur 
    • ''passwd''  -- mot de passe de l'utilisateur (crypté) 
    • ''lang''  -- langue qu'utilise l'utilisateur a choisir parmi celles supportées par le système 
    • ''mail''  -- mail de l'utilisateur 
    • ''is_group''  -- indiquant simplement si c'est un groupe ou un utilisateur
  • author (auteurs et traducteurs)
    • ''id_author''  -- code de l'auteur 
    • ''fk_website''  -- code du site web de l'auteur 
    • ''fk_realname''  -- acces au "vrai" auteurs (dans le cas d'un alias)  
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- nom de l'auteur 
    • ''nationality''
  • book (livres)
    • ''id_book''  -- code livre utilisé en interne 
    • ''fk_cycle''  -- code du cycle auquel appartient le livre 
    • ''fk_originalbook''  -- code de la version originale du livre 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- titre du livre 
    • ''lang''  -- langue du livre 
    • ''tome''  -- numéro du tome du livre a l'intérieur du cycle 
  • cycle (cicle)
    • ''id_cycle''  -- code cicle 
    • ''fk_cycle''  -- code du cycle auquel appartient le cicle 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- titre du cicle
    • ''tome''
  • section (genre)
    • ''id_section''  -- code de la section 
    • ''fk_sectionparent''  -- code de la section a laquelle appartient cette section (ex: Romans > Fantasy > Dark Fantasy, Dark Fantasy appartient à Fantasy) 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- nom de la section 
  • link  lien vers un site web 
    • ''id_link''  -- code du site web 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- nom du lien 
    • ''description''  -- description du site 
    • ''url''  -- adresse du site 
  • publisher (éditeur)
    • ''id_publisher''  -- code éditeur 
    • ''name''  -- nom de l'éditeur 
    • ''fk_link''  -- code du site web de l'éditeur 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
  • collection (collection de l'editeur a laquelle appartient la version éditée du livre)
    • ''id_collection''  -- code de la collection 
    • ''fk_editor''  -- code de l'editeur 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''name''  -- nom de la collection 
  • bookpublished (version editée du livre)
    • ''id_bookpublished''  -- code de la version éditée du livre 
    • ''isbn''  -- code isbn du livre édité 
    • ''fk_book''  -- code du livre "de base" 
    • ''fk_translator''  -- code du traducteur 
    • ''fk_collection''  -- code de la collection 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''publisher_id''  -- code de la version édité du livre chez l'éditeur 
    • ''publish_date''  -- date d'édition du livre 
    • ''cover''  -- couverture du livre, pas encore déterminé la forme (lien vers l'image, image elle même stockée dans la base, ...) 
    • ''synopsys''  -- (synopsys)
  • location (lieu ou se trouve le livre)
    • ''id_location''  -- code du lieu géographique/adresse 
    • ''fk_owner''  -- code de l'utilisateur possesseur du lieu 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''description''  -- description courte du lieu 
    • ''d_visibility''  -- visibilité des informations de ce lieu: seulement la description, adresse complète, etc. 
    • ''adress''  -- adresse du lieu 
    • ''postalcode''  -- code postal du lieu 
    • ''city''  -- ville du lieu 
    • ''country''  -- pays du lieu 
  • bookentity (l'entité proprement dite du livre qui appartient à un utilisateur, etc.)
    • ''id_bookentity''  -- code du livre physique 
    • ''fk_bookpublished''  -- code vers l'édition du livre 
    • ''fk_owner''  -- code de l'utilisateur a qui appartient le livre 
    • ''fk_responsible''  -- code de l'utilisateur du responsable du livre, celui a qui il a été prêté en général 
    • ''fk_location''  -- code du lieu ou se trouve le livre 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 

Associations

  • l_user_group (table de correspondance entre utilisateurs et groupes puisque chacun peut en contenir plusieurs)
    • ''fk_user''  -- code utilisateur 
    • ''fk_usergroup''  -- code groupe 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
  • l_subsection_section (table de correspondance entre section et sous sections puisque chacune peut être contenue dans plusieurs)
    • ''fk_subsection''  -- code sous section 
    • ''fk_section''  -- code section 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
  • l_book_author (table de correspondance livre/auteur puisque qu'un livre peut avoir plusieurs auteurs)
    • ''fk_book''  -- code du livre 
    • ''fk_author''  -- code de l'auteur 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
  • l_book_section (table de correspondance livre/genre puisque qu'un livre peut avoir plusieurs genres)
    • ''fk_book''  -- code du livre 
    • ''fk_section''  -- code de la section 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
  • l_book_user (table de correspondance livre édité/utilisateur notamment pour savoir qui a lu quoi)
    • ''fk_book''  -- code du livre 
    • ''fk_user''  -- code de l'utilisateur 
    • ''d_state''  -- une valeur indiquant l'état de cet objet comme par exemple "supprimé". Le but est de ne rien supprimer réellement afin de pouvoir les récupérer facilement en cas d'erreur 
    • ''read''  -- pourcentage indiquant le degré de lecture du livre par l'utilisateur 
    • ''comment''  -- commentaire de l'utilisateur 
    • ''grade''  -- note donnée par l'utilisateur 

Dictionnaires

  • d_state (dictionnaire recensant les différents états possibles pour un objet)
    • valid
    • opened
    • deleted
  • d_typemodification
    • insert
    • update
    • delete
  • d_adressvisibility
    • name
    • description
    • all
Tags:
Created by Thomas Mortagne on 2009/12/06 13:15

This wiki is licensed under a Creative Commons 2.0 license
XWiki Enterprise 2.0.4.25339 - Documentation