banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 19 May 2011 14:58

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1024
Site web

Modélisation d'une base pour corine Biotope

Bonjour,


Je me permet d'ouvrir un sujet car j'essaye de modéliser une base postgresql pour accueillir les données corine biotope.

L'objectif est de pouvoir grâce à un code corine (ex : 41.12 ) récupérer l'arbre corine, càd les numéros corine précédent le n° 41.12 par exemple.

Au départ, je pensais exploser le fichier Excel en 8 tables car il y a au maximum 8 niveaux dans l'arbre. Par la suite, j'ai été confronté à un problème important : comment lier toutes les tables pour re-créer l'arbre ? J'ai beau me creuser la tête, je n'arrive pas à produire une base Merise qui soit simple à remplir et qui puisse répondre à mes attentes.

Les données corine biotope sont téléchargeables sur :http://inpn.mnhn.fr/isb/programmes/fr/r … iotope.jsp via un fichier Excel.


Pouvez-vous me guider sur la création de cette base ?


Par avance merci.

Dernière modification par heretik25 (Thu 19 May 2011 15:25)


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#2 Fri 20 May 2011 14:57

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1024
Site web

Re: Modélisation d'une base pour corine Biotope

Personne pour m'aiguiller ?


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#3 Fri 20 May 2011 15:19

damien_boilley
Participant assidu
Lieu: Grenoble
Date d'inscription: 16 Apr 2009
Messages: 224

Re: Modélisation d'une base pour corine Biotope

Bonjour, si j'ai bien compris ce n'est pas vraiment un problème SIG ? Si personne n'a d'idée essayez peut-être de trouver un forum PostGreSql...

Hors ligne

 

#4 Fri 20 May 2011 15:30

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1024
Site web

Re: Modélisation d'une base pour corine Biotope

Bonjour et merci pour la réponse,

C'est un problème de modélisation. Suite à cette modélisation, il faut que je puisse être capable de remplir les données avec FME smile Je pense que le sujet a sa place au sein d'un forum SIG car être SIGISTE c'est aussi modéliser et gérer des données attributaires.

Ci joint un fichier excel avec quelques lignes et le résultat que j'aimerai obtenir partant d'une modélisation différente que pensée au départ.

Modélisation :

-une table contenant les informations du code


code_corine | caracteristiques

4                 |  Forêt

-Une table contenant les différents niveaux hiérarchiques de corine biotope


niveau_1|niveau_2|niveau_3
4            |41          |41.1


Si il y à des pro en FME smile

@bientôt et merci

Dernière modification par heretik25 (Fri 20 May 2011 15:40)


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#5 Mon 23 May 2011 09:59

Jean-Yves G
Membre
Lieu: toulouse
Date d'inscription: 12 Oct 2005
Messages: 516

Re: Modélisation d'une base pour corine Biotope

Bonjour,

je pense que ce problème de modélisation aurait plus d'audience sur le forum Geo-BD , je transfère donc le sujet

JY

Hors ligne

 

#6 Mon 23 May 2011 11:04

ChristopheV
Membre
Lieu: Ajaccio
Date d'inscription: 7 Sep 2005
Messages: 3197
Site web

Re: Modélisation d'une base pour corine Biotope

Bonjour,

Effectivement le sujet a plus sa place ici.

Suite à cette modélisation, il faut que je puisse être capable de remplir les données avec FME


Il faut savoir que la modélisation est indépendante de l'outil, ou du langage de programmation ou du SGDBR. C'est une règle d'or.

Ensuite le code d'un niveau est composé de n digit n = N° du niveau si l'on excepte le "." donc pour un niveau n le niveau n-1= extractionchaîne(chaîne,1, longueurchaine(chaine)-1)
le niveau n-i =extractionchaîne(chaîne,1, longueurchaine(chaine)-i)
(si on excepte le ".")


Christophe
L'avantage d'être une île c'est d'être une terre topologiquement close

Hors ligne

 

#7 Mon 23 May 2011 11:16

MathieuB
Membre du bureau
Lieu: Montpellier
Date d'inscription: 18 Jan 2006
Messages: 1230
Site web

Re: Modélisation d'une base pour corine Biotope

Bonjour,

Cest une relation parent/enfant à une seule table, dans laquelle l'attribut cd_cb_sup fait référence à une valeur de l'attribut cd_cb.

j'ai intégré les données telles qu'issues de l'iNPN :
http://sig.cenlr.org/integration_donnee … ls_habitat

Ensuite, cet article du très bon site postgresqlonline explique l'utilisation de la récursivité avec postgresql pour représenter un arbre :
http://www.postgresonline.com/journal/a … tures.html

Code:

WITH RECURSIVE arbre_corine AS
(SELECT cd_cb, lb_cb97_fr, cd_cb_sup, CAST(cd_cb As varchar(1000)) As branche
FROM inpn.typo_corine_biotopes
WHERE cd_cb_sup IS NULL OR cd_cb_sup =''
UNION ALL
SELECT cb.cd_cb,cb.lb_cb97_fr,
    cb.cd_cb_sup,
    CAST(sp.branche || '->' || cb.cd_cb As varchar(1000)) As branche
FROM inpn.typo_corine_biotopes As cb
    INNER JOIN arbre_corine AS sp
    ON (cb.cd_cb_sup = sp.cd_cb)
)
SELECT branche||' : '||lb_cb97_fr
FROM arbre_corine
ORDER BY cd_cb;

Voici les premières lignes de résultat :


1 : Habitats littoraux et halophiles
1->11 : Mers et océans
1->11->11.1 : Eaux marines
1->11->11.1->11.11 : Eaux océaniques
1->11->11.1->11.12 : Eaux du talus et du plateau continental (= eaux néritiques)
1->11->11.1->11.12->11.121 : Eaux littorales
...

A adapter avant export csv pour obtenir le résultat attendu.

Dernière modification par Mathieu BOSSAERT (Mon 23 May 2011 11:22)


Mathieu BOSSAERT
Association GeoRezo

Hors ligne

 

#8 Mon 23 May 2011 12:23

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1024
Site web

Re: Modélisation d'une base pour corine Biotope

Bonjour,

Merci pour vos réponses et merci pour l'exemple PostgreSQL et les liens M. Bossaert.

J'ai réussi à créer une procédure sous FME qui correspond à mes besoins.

Ci-joint, le projet Workbench.

@bientôt et bonne continuation


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

Pied de page des forums

Powered by FluxBB