Plugin GeneSPIP - Gedcom import

Importation d’un fichier GedCom

GeneSPIP permet l’importation d’un fichier GedCom, l’article décrit les informations prises en compte à partir du fichier GedCom source.

1/ Etape 1:

Importation:

L’importation est prise en charge par la page “gedcom_fonctions.php”.
En premier lieu, le script créer une table temporaire “spip_genespip_tempo” (encodage UTF-8) avec les champs:
-  num_tableau
-  num_info
-  type
-  info

Le fichier Gedcom sera ainsi lu par ligne et chaque ligne sera insérée dans la table “spip_genespip_tempo”

num_tableau et num_info permettent de gérer le rang par rapport aux entrées du fichier Gedcom.

num_tableau permettra en particulier de créer le pointeur lors la lecture de la table et ainsi identifier les informations propre à un individu ou à une famille.

Le champ “type” stockera les types d’informations (FAM, INDI, NOTE, NAME ...).
-  Le champ “info” stockera les détails propre au type.

2/ Etape 2:

Transfert des données de la table temporaire vers les tables de genespip (“spip_genespip_individu” et “spip_genespip_mariage”)

Liste des données converties:

TYPE(GedCom)INFO(GeneSPIP)
INDI id_individu
NAME Nom, Prénoms
DATE(MARR, BIRT, DEAT) mar ou naissance ou deces
PLAC(MARR, BIRT, DEAT) marlieu ou naissancelieu ou deceslieu
OCCU metier
RESI adresse
CONC, CONT, NOTE note
SEX sexe
HUSB ou WIFE epoux
CHIL enfant=1

Les autres types ne sont pas traités.

3/ Etape 3:

-  Suppression de la table temporaire
-  Exécution de la fonction “genespip_maj_liste()” afin d’alimenter la liste des patronymes “spip_genespip_liste”.

updated on 2 October 2019

Discussion

3 discussions

  • Bonjour,

    ce serait génial si ce plugin pouvait être adapté aux nouvelles versions de Spip. En tous cas on l’espère en tant qu’association de généalogie.
    Marie
    www.geneoweb.org

    Reply to this message

  • 7

    Ce plugin Est-il maintenu pour une version 2.1 de spip ?

    cordialement,

    • bonjour
      Idem, une mise à jour vers spip 2 serait la bienvenue.

    • Bonjour

      en cet veille de noël, je vous informe qu’une version pour spip 2.0 est en cours de refonte mais il reste encore des soucis a corriger.

    • Bonjour
      Excellente nouvelle, dès que cette nouvelle version du plugin est disponible, je suis partant pour la tester. Merci d’avance.

      PS: compatible 2.0 et 2.1 j’imagine.

    • Oui enfin moi je dev sur la dernière version en permanence. Mais ça reste encore du boulot les gas ...

    • jerome mermet

      bonjour
      Du nouveau sur une version de ce plugin ?

      Le site de notre association des mermet (2500 patronymes) pourrait évoluer sur une version récente de spip.

    • Bonjour

      J’ai un peu ralentit sur ce projet car je bloque sur une fonction php.

      Donc si quelqu’un maitrise ...

    • Pose toujours ta question ici ou sur un autre forum; si ça n’a pas déjà été fait...

    Reply to this message

  • 1

    j’ai juste une question technique.

    che moi les indications de naissance sont du type

    1 BIRT
    2 DATE 28 JUN 1990
    3 TIME 0:25
    2 PLAC Melun,77000,Seine-et-Marne,Île-de-France,FRANCE,

    comment fait -on script pour savoir que la date 28 juin 1990 correspond à la naissance ? étant dopnné que tu c a se troiuve dans une seul table en bazar

    • Christophe Renou

      C’est num_tableau qui permet de faire la différence:

      Num_tableau est construit de la manière suite
      n° groupe-n° sous groupe

      A chaque détection d’un 0, on incrémente le n° groupe et à chaque détection de 1, on incrémente le n° sous groupe
      exemple

      Détail num_tableau num_info type info
      num_info=0 -> n° groupe est incrémenté de 1 1-0 0 HEAD
      num_info=1 -> n° sous groupe est incrémenté de 1 1-1 1 SOUR
      1-1 2 VERS 0.1
      1-1 2 NAME Auteur
      num_info=1 -> n° sous groupe est incrémenté de 1 1-2 1 DEST logiciel conforme Gedcom
      num_info=1 -> n° sous groupe est incrémenté de 1 1-3 1 DATE 15 APR 2003 / may 2004
      num_info=0 -> n° groupe est incrémenté de 1 2.3 0 INDI
      num_info=1 -> n° sous groupe est incrémenté de 1 2-4 1 BIRT
      2-4 2 DATE 28 JUN 1990
      2-4 3 TIME 0:25
      2-4 2 PLAC Melun, 77000, Seine-et-Marne, Île-de-France, FRANCE

      Le tableau fait, il suffit de détecter “BIRT” et ainsi tout ce qui possède le même num_tableau que celui du “BIRT” sélectionné correspond au données de ce dernier.

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom