PnX-SI / GeoNature

Application de saisie et de synthèse des observations faune et flore
GNU General Public License v3.0
98 stars 99 forks source link

MCD CONTACT V2 - Référentiel, nomenclature et champs #183

Closed camillemonchicourt closed 6 years ago

camillemonchicourt commented 7 years ago

Voir le standard Occurences de taxons du SINP : http://standards-sinp.mnhn.fr/occurrences_de_taxons_v1-2-1/

Et les nomenclatures : http://standards-sinp.mnhn.fr/nomenclature/

camillemonchicourt commented 7 years ago

Premier jet de MCD par @ClaireLagaye pour la schema Contact faune V2, sur la base du premier document de définition (http://geonature.fr/documents/2017-04-GN2-Fonctionnalites-0.1.pdf) :

mcd

A discuter et à accorder avec les décisions qui seront prises sur les points :

Et à comparer aux standards Occurrences de taxon, métadonnées, sensibilité et aux nomenclature SINP pour s'en approcher le plus possible quand c'est pertinent.

A comparer aussi aux standards internationaux du GBIF.

camillemonchicourt commented 7 years ago

Une première interrogation : Les valeurs des bibliothèques qui dépendent d'un groupe doivent-elles se baser sur taxonomie.bib_listes ou sur les rangs taxonomies et groupes présents dans TaxRef ?

Je pencherai pour la deuxième solution pour s'appuyer sur moins possible sur taxonomie.bib_listes.

gildeluermoz commented 7 years ago

Dans le cas du contact faune je suis plutôt pour l'option 2. A évaluer mais je pense que pour stade, critères et comportement au moins, on colle bien avec la hiérarchie taxonomique. Pour technique, j'y reviens plus loin.

Comment procède t-on pour les modifications à venir ? A t-on les droits en écriture sur cette base ? Passe t-on obligatoirement par Claire pour les modifications, même mineures (exemple : renommer la table bib_lots en t_lots ou t_jeux_donnees pour reprendre le vocabulaire SINP)

Je vous invite aussi à lire aussi cette FAQ: http://standards-sinp.mnhn.fr/faq-occurrences-de-taxons-v1-2-1/

camillemonchicourt commented 7 years ago

GIL :

J'ai créé un fichier sql introduisant qq notions concernant les nomenclatures de l'INPN. Je n'ai encore pris le temps d'importer toutes les nomenclatures qui nous seraient utiles mais j'ai une requête ligne 1159 qui permet de traiter les fichiers csv dispo sur le site de l'inpn : http://standards-sinp.mnhn.fr/nomenclature/. Il faut ajouter une colonne (en premier) contenant le N° du type de nomenclature. Je le ferai plus tard si on valide le principe.

Si dans ta base il y a déjà les schémas utilisateurs et taxonomie, tu peux ne prendre que la partie à partir de la ligne 875.

A noter, j'avais commencé à travailler sur une notion de vocabulaire que la notion de nomenclature remplace. J'ai tout laissé, c'est un brouillon.

J'ai surtout commencé à tester la factorisation des nomenclatures et le rattachement des stades à taxref plutôt qu'aux listes. La table "contactfaune.bib_stades_cfaune" serait remplacée par la table "meta.t_nomenclatures" et la table "contactaune.cor_stade_liste" par la table "contactfaune.cor_taxref_stade_vie". Le travail est à poursuivre sur la même logique avec les autres notions (comportement, critères, techniques, etc...).

J'ai aussi commencé à tester la notion de paramètres en base mais ce n'est pas du tout abouti.

Gil et Amandine ont ensuite retravaillé cela et vont proposer une nouvelle version du MCD, à discuter.

camillemonchicourt commented 7 years ago

Voici donc la nouvelle version du MCD :

geonature2db

Et les commentaires de @gildeluermoz :

Voici un modèle provisoire découlant de nos échanges avec @amandine-sahl lors du GTSI. Les évolutions majeures concernent le schéma contact faune qui est maintenant totalement indépendant des autres.

Prochaine étape :

camillemonchicourt commented 7 years ago

GIL :

J'ai principalement intégré les nomenclatures INPN permettant de gérer les occurrences de taxons (les 254 premières nomenclatures). J'ai mis en place avec l'aide d'Amandine la hiérarchie. J'ai également commencé à créer qq liens entre nomenclature, règne et group2_inpn dans "taxonomie.cor_nomenclature_taxref", juste pour tester. J'ai du légèrement modifier une contrainte pour permettre l'affectation d'une nomenclature à tout un règne (on ne peut pas laisser le champ group2_inpn null car il fait parti de la clé primaire). Remplir cette correspondance va être ardu et long.

AMANDINE

Je n'ai pas compris pourquoi il y avait une table spécifique bib_techniques_obs. Elle pourrait rentrer dans la table nomenclature et gérer les restrictions via la table relation, Ce qui éviterait les tables spécifiques. Cela créerait 2 vocabulaires techniques d'observation et champ d'application (ou un autre nom) et une relation de type condition d'utilisation ou restriction d'usage Qu'est-ce que c'est que cette table meta.bib_vocabulaires?

GIL

Tout ça est en cours. Bib_vocabulaires doit être supprimée. La bib_techniques obs doit aussi être intégrée à la nomenclature bien sur. Mais comme il y a des liens avec les group inpn qui sont fait, je ne voulais pas les perdre avant d'avoir fait l'intégration. Il y a d'autres tables à nettoyer.

camillemonchicourt commented 7 years ago

GIL

Le champ id_numerisateur est actuellement dans la table des occurrences de taxons. Est-ce que vous êtes d'accord sur le fait qu'il devrait plutôt se situer dans la table des releves (avec la date, le geom, l'altitude, etc...) ?

Sinon, j'ai intégré les techniques d'observation dans la t_nomenclature et j'ai récupéré les liens avec les règnes ou les group2_inpn utilisables. J'ai aussi fait une vue des techniques d'observation dans le schéma contact faune. usage SELECT FROM contactfaune.v_techniques_observations WHERE group2_inpn = 'Oiseaux'; SELECT FROM contactfaune.v_techniques_observations WHERE regne = 'Plantae'; --bon c'est pas de la faune mais si on fait un seul contact ça anticipe l'affaire.

Le soucis c'est que tous les group2_inpn ne sont pas décrits. Dans le cas d'un taxon dont le group2_inpn n'est pas renseigné dans taxonomie.cor_taxref_nomenclature, je pense qu'il faut renvoyer toutes les techniques. Pour ça, je creuse l'idée d'une fonction (la plus générique possible) et qui teste si le group2_inpn ou le regne du est présent. Si ou on renvoie une liste filtrée, sinon, on renvoie une liste de toutes les nomenclatures du type demandé.

camillemonchicourt commented 7 years ago

GIL :

Quelques infos sur les évolutions du MCD.

TODO :

Ci-joint les SQL des 3 schémas (+data_nomenclatures + qq complément taxonomie) si vous voulez faire une install en local (DROP SCHEMA meta CASCADE d'abord + contacfaune + medias). Et un schéma dev pour sauvegarder qq trucs potentiellement utiles.

SQL-mcd-geonature-V2_2017-06-22.zip

camillemonchicourt commented 6 years ago

Dernières versions ici : https://github.com/PnX-SI/GeoNature/blob/docker/data/modules/contact/contact.sql et compléments (synthese, métadonnées, nomenclatures...) dans https://github.com/PnX-SI/GeoNature/tree/docker/data/core

TheoLechemia commented 6 years ago

Dernière discussion sur l'organisation des schemas et des nomenclatures : https://github.com/PnX-SI/GeoNature/commit/46904bfe5bd398d20bae8e4ed178cf465eb45e6f#commitcomment-23545214

camillemonchicourt commented 6 years ago

Banzaï, on bascule le MCD en anglais !

camillemonchicourt commented 6 years ago

Non on parle là des noms des champs. Basculer tous les champs en anglais et non plus en FR.

camillemonchicourt commented 6 years ago

---- Modification de la BDD----

Schéma nomenclature

SENSIBILITY Modification/ ajout de colonnes :

CONTACT

Relevés

Modification:

Occurrences Modification :

Correspondance dénombrement (Cor_stage_sexe_number)

Modification :

camillemonchicourt commented 6 years ago

Après traduction de la BDD en anglais, intégration du multilingue et pas mal d'évolutions, voici une nouvelle version du MCD (y aurait encore de quoi faire pas mal d'ajustements des blocs mais c'est looooooooooooong !)

2017-08-24-geonature2db

camillemonchicourt commented 6 years ago

Le MCD et le formulaire avancent. On peut désormais attribuer des valeurs par défaut à de nombreux champs (définis dans la BDD en fonction du regne/group2_inpn du taxon et éventuellement de l'organisme de l'utilisateur connecté). On peut masquer certains champs pour insérer de manière transparente sa valeur par défaut

2017-11-occtax

camillemonchicourt commented 6 years ago

Module renommé en OCCTAX - https://github.com/PnX-SI/GeoNature/issues/277

camillemonchicourt commented 6 years ago

Concernant l'UUID (id_sinp) de chaque OCCURRENCE, on stocke l'UUID au niveau du dénombrement pour pouvoir remonter une info précise de dénombrement dans la synthèse et les exports SINP. Une observation d'un taxon avec 2 dénombrements = 2 lignes dans la synthèse et les exports SINP.

Vu avec le MNHN :

En attente de la bascule du dénombrement vers le concept de descriptif du sujet, voilà la réponse que j'avais pu faire à l'OAFS qui avait la même problématique :

  • si vous avez un dénombrement global, sans plus d'informations : une seule occurrence avec son UUID

  • si vous avez le cas 2 mâles, 3 femelles : deux occurrences (donc deux lignes), chacune avec son UUID, l'une pour 2 mâles, l'autre pour 3 femelles.

camillemonchicourt commented 6 years ago

On a désormais une première version stabilisée du MCD du module OCCATX (ex-Contact). Les compléments/ajustements seront traités dans des tickets spécifiques.