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 05 November 2009 12:11

cybernar
Participant occasionnel
Lieu: Montpellier
Date d'inscription: 11 Mar 2009
Messages: 13

[MDweb 1.6] Importer des lots de fiches de métadonnées

Bonjour !
Je travaille sur MDweb 1.6 et je cherche à importer quelques 5000 fiches de métadonnées concernant des cartes papiers de mon laboratoire.
Ces fiches sont enregistrées dans une base Access : je précise que les attributs ne suivent aucune norme particulière ... je m'occupe aussi de faire la correspondance avec ISO 19115 et le gabarit 'carte papier'. J'avais d'abord envisagé de créer des fichiers XML à partir d'Access et d'utiliser la fonction 'Import XML' de MDweb, mais je me rends compte que cela serait trop fastidieux (en effet il n'est pas possible d'importer + de 5 fichiers XML à la fois ...)

Aussi, j'ai l'intention de créer sous VBA Access une moulinette qui générerait un fichier dump SQL, de manière à intégrer ensuite directement dans la BD PostgreSQL les 5000 nouvelles fiches.

Je voulais savoir si quelqu'un (je m'adresse plus particulièrement aux développeurs de MDweb, mais aussi aux utilisateurs) aurait déjà réalisé quelque chose de semblable. Existe t-il un document qui décrit le modèle de la BD métadonnées de MDweb 1.6 ? La meilleure stratégie est-elle de s'inspirer  du script 'XmlVersSql.php' issu du code source, comme je compte le faire ? Auriez-vous une meilleure idée, peut-être plus simple, pour faire ce que je cherche ?

Merci de vos réponses,
Cyril


Cyril BERNARD
CEFE-CNRS (UMR 5175)

Hors ligne

 

#2 Fri 06 November 2009 14:45

jcd1964
Participant actif
Lieu: Montpellier
Date d'inscription: 7 Dec 2006
Messages: 59
Site web

Re: [MDweb 1.6] Importer des lots de fiches de métadonnées

Bonjour Cyril,

effectivement, il me semble que la manière la plus efficace vu le nombre de fiches à importer serait de réaliser un scripts de transformation qui pourraient générer les insertions SQL pour la base de données MDweb. la difficulté (pas insurmontable) est de comprendre le modèle de la base, et de bien faire la correspondance entre ta base accès et les éléments ISO.
Le problème majeur est de calculer ce que l'on appelle le num_elmnt. il s'agit d'un indice affecté à chaque élément de métadonnées qui permet de le resituer dans la hiérarchie, notamment lorsqu'il a des éléments multi occurents ( un gabarit est un arbre). cela est déterminé à partir du num_elmnt affecté dans la table elmnt_gabarit.


la deuxième solution est d'utilisé le script qui importe les XML en le paramétrant puis en lançant des exécutions répétés. le souci avec cela, c'est la capacité du serveur web et la limite de php (temps d'éxécution).


je joint le modèle physique de la base mdweb


Jean Christophe


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

Jean Christophe Desconnets
Chef de projet MDweb
IRD Institut de Recherche pour le Développement

Hors ligne

 

#3 Fri 06 November 2009 17:57

cybernar
Participant occasionnel
Lieu: Montpellier
Date d'inscription: 11 Mar 2009
Messages: 13

Re: [MDweb 1.6] Importer des lots de fiches de métadonnées

Bonjour Jean-Christophe, et merci bien pour le modèle de données.

Je vais aussi regarder des exemples de fiches déjà saisies pour bien comprendre le fonctionnement de num_elmt.

Pour ce qui concerne le script XmlVersSql.php, je n'ai pas encore bien compris où sont initialisés les tableaux relatifs aux fichiers à importer, qu'on voit au début du script ($code_observatoire_trans[], $mtd_sheet_id_trans[], $source_import_trans[], $update_date_trans[]) ... je continue à regarder et je reposte au cas où j'ai trop de mal ...

Cyril


Cyril BERNARD
CEFE-CNRS (UMR 5175)

Hors ligne

 

Pied de page des forums

Powered by FluxBB