IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Schéma Discussion :

[PowerAMC] Gestion des attributs non commun


Sujet :

Schéma

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Points : 331
    Points
    331
    Par défaut [PowerAMC] Gestion des attributs non commun
    Bonjour,

    j'aimerais avoir votre retour concernant la façon de faire pour modéliser un système permettant de gérer au mieux des attributs non commun à une entité type.

    Je m'explique au travers d'un exemple :

    Prenons par exemple le cas d'une modélisation d'une observation. Un individu A travaillant pour une société A observe quelque chose. Il note des champs obligatoire et commun entre toutes les observation (date, position, chose observée...) mais aussi des attributs non commun (météo, présence de vent...).

    L'individu B qui travaille pour la société B fait pareil mais lui va avoir d'autres champs associés a ses propres observations.

    La question est de savoir comment peut-on faire pour stocker ces différences et être tout de même capable de restaurer les informations différentes pour chaque individu ?


    Par avance, merci pour vos lumières

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    S'il y a différents types d'observations avec pour chaque type les mêmes informations à enregistrer dans un type quel que soit l'observateur, alors il suffit de faire un héritage :
    obs_typeA -(1,1)----être----0,1- observation
    obs_typeB -(1,1)----être----0,1----------|

    observation (obs_id, [colonnes communes à tous les types d'observations])
    obs_typeA (ota_id_observation, [colonnes spécifiques aux observations de type A])
    obs_typeB (ota_id_observation, [colonnes spécifiques aux observations de type B])

    Si par contre c'est l'observateur qui décide sur le moment les informations qu'il note, en plus de quelques informations standardisées pour toutes les observations, alors il faut une table séparée pour les informations complémentaires :
    observation -0,n----contenir----(1,1)- info_complementaire

    observation (obs_id, [colonnes communes à toutes les observations])
    info_complementaire (icp_id_observation, icp_numero, libelle...)
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Points : 331
    Points
    331
    Par défaut
    Bonjour et merci pour ta réponse,

    Sachant qu'il y a potentiellement plusieurs type d'observation et que dans un avenir proche, il y en aura d'autre, comment peut-on créer quelque chose d'évolutif qui permettrait d’éviter la création d'une nouvelle table dès lors qu'un nouveau type d'observateur apparaît ?

  4. #4
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Ça veut dire que tu es dans le premier cas (héritage) avec des types d'observations bien définies ?

    Si tu veux que ce soit évolutif sans création de tables filles supplémentaires, je ne vois plus qu'une table des types et des métadonnées associées aux types.
    type_obs -0,n----typer----1,1- observation -0,n----recueillir
        |-----0,n----avoir----1,n- critere -0,n------------|
    Il faut prévoir en plus une contrainte d'inclusion entre les associations pour qu'une association de type A n'enregistre pas de critèress recueillis qui ne sont normalement pas présents dans le type A.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Points : 331
    Points
    331
    Par défaut
    Ça veut dire que tu es dans le premier cas (héritage) avec des types d'observations bien définies ?
    Oui. pour autant, rien empêche que dans un mois, un observateur du type A créer de nouveaux champs qu'il faudra stocker. Par contre, seul les nouvelles données contiendront les informations.

  6. #6
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Je relève une ambiguïté dans tes deux derniers messages :
    Sachant qu'il y a potentiellement plusieurs type d'observation

    ...

    dès lors qu'un nouveau type d'observateur apparaît

    .....

    dans un mois, un observateur du type A créer de nouveaux champs
    Dans ton premier message, tu ne parlais que d'observations et c'est sur cette base que j'avais conçu ma réponse avec ou sans héritage.

    Ton dernier message me laisse à penser que ce serait plutôt la solution sans héritage qui conviendrait.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. [Report] Gestion des titres non numérotés + mise en page
    Par Olivier_ dans le forum Mise en forme
    Réponses: 4
    Dernier message: 08/06/2007, 11h12
  2. [Cognos] Gestion des hiérarchies non balancées
    Par yphilogene dans le forum Cognos
    Réponses: 3
    Dernier message: 23/03/2007, 14h52
  3. Gestion des threads de communication TCP/IP
    Par Daminus dans le forum Delphi
    Réponses: 6
    Dernier message: 01/12/2006, 14h37
  4. Gestion des attributs hidden et visible
    Par Jibees dans le forum Général JavaScript
    Réponses: 19
    Dernier message: 14/04/2006, 14h58
  5. Une fonction avec des attributs non obligatoires
    Par YanK dans le forum Langage
    Réponses: 5
    Dernier message: 15/11/2002, 14h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo