Le Projet Spip-Genea

Attention, cette contribution est EN CHANTIER : elle n’est peut-être pas fonctionnelle.

En bref

Pour voir ensemble comment créer un site avec SPIP qui comprendra une partie généalogique, notre recherche porte sur la partie généalogique, en utilisant la norme GEDCOM associée à SPIP.

Pourquoi ce nom ?

Simplement du fait qu’une liste de discussion est associée à ce projet et que la liste en question est hébergée par @rezo.net. Il fallait garder une certaine cohérence avec les autres listes SPIP. Soit en minuscule avec le nom qui commence par spip- puis l’intitulé résumant le plus parfaitement possible le sujet de la liste alors quoi de plus simple que de prendre le raccourci de généalogie donc généa.

En discuter

Pour discuter, proposer des améliorations ou évolutions, résoudre un problème, vous pouvez soit :

-  Écrire un message à la liste de discussion « spip-genea@rezo.net » :

-  Mettre vos commentaires et remarques sur le forum joint à cet article.

De l’origine à l’historique

Cela fait longtemps que plusieurs discussions dans la galaxie SPIP portent sur la généalogie et notamment sur la construction possible d’un site .

http://forum.spip.net/spip.php?page=recherche&recherche=genealogie

Il fallait comme le Phénix faire renaître de ses cendres :
GeneSPIP : http://www.genespip.fr/

  • Version Spip 1.9 : Christophe RENOU

(j’ai prie contact avec le concepteur, pas de réponse actuellement))

  • Version Spip 2 : Pierre KHUN

Je ne serais pas de la partie car cela demande de passer beaucoup de temps dans le projet afin de pas en perdre le fil du code. De gros projet sont en court de mon côté et je ne peux m’engager dedans pour le moment.

SPIP-Genea : http://xebiaut.free.fr/spip.php?rubrique89

  • Version Spip 1.9 : Xavier BUROT

(j’ai prie contact avec le concepteur, pas de réponse actuellement))

Escalogis :

Le projet n’a jamais vu le jour, le concepteur n’existe plus

Famgenspip : http://www.famgenspip.fr/

  • Version Spip 3

Je participe mais malheureusement mes connaissances en informatique ne sont pas suffisamment élevées pour réaliser du code

et puis comme d'autres s’intéressent à la généalogie, essayons de faire en sorte d'être dans la course et en pole position car les CMS & Les réseaux sociaux à teinture généalogique font pléthore ! ({Joomla, WordPress, GuppY, Geni, Genoom, Familles d'Avant, Myheritage, Amiglia, Kincafe, Famillion, Familylink, Famiva, Zooof, Kindo,)  } 

et j'en oublie sûrement.

Attention :

En cours de développement sur xxx xxx xxx. La présente page a juste pour vocation de présenter les objectifs visés. Aucun SAD ne sera assuré tant que le projet ne sera pas finalisé au moins en bêta. Spip-genea est développé sur la version de SPIP 3. Il n’est pas compatible avec les versions précédentes.

Spip-Genea se doit d’être communiquant

Via le format standard d’échange de données généalogiques

Quand on commence à faire des recherches généalogiques, on se retrouve rapidement confronté au terme utilisé par tous les généalogistes : le fameux GEDCOM.

Qu’est ce que ça veut bien dire et à quoi sert ce truc ?
expliquons de manière très sommaire, l’intérêt du GEDCOM en généalogie.

GEDCOM est l’abréviation de GEnealogical Data COMmunication (Communication de Données Généalogiques). C’est une norme standard et non un programme.

Ce n’est ni plus ni moins qu’un fichier texte dont l’extension est .ged. Il est donc possible de l’ouvrir sans logiciel spécifique et avec n’importe quel éditeur de texte (le bloc note de votre ordinateur, word, etc..).
Le GEDCOM répond à des règles d’écriture spécifiques pour permettre l’échange de données généalogiques.

En savoir plus sur le format GEDCOM , une petite liste de sites sur ce sujet :

Le fomat GEDCOM
Norme GEDCOM - Wikipédia
GEDCOM sur Francogene
Standards GenWeb
Manuel Gedcom

GEDCOM Avantages Inconvénients
GEDCOM X

serait la nouvelle structure XML ou JSON développée par les mormons (et maintenue activement sur GitHub), avec API en C ou JAVA, PHP. Donc pouvoir gérer une fusion de plusieurs fichiers GEDCOM .

Nouvelle norme XML définie par les mormons :
https://github.com/FamilySearch/gedcomx/blob/master/specifications/xml-format-specification.md
GEDCOM 5

qui n’as pas évoluée depuis 1996 et que chaque logiciel adapte, donc c’est plus vraiment une norme.
une librairie PHP Autonome et que SPIP utilise (on profite des évolutions externes et du savoir/expérience des autres) Tributaire du dev de la librairie
Permet seulement trois jeux de caractères pour la transmission de données généalogiques : ASCII, ANSEL et UNICODE UNICODE est clairement l’avenir mais pour l’instant pas très bien pris en charge ; Il faut privilégier le format UTF8.

Le projet devra donc permettre l’importation (quelles informations prendre en compte à partir du fichier GEDCOM source) et l’exportation d’un fichier GEDCOM.

1° Importation GEDCOM

Il existe un script réalisé par Nicolas LETAVERNIER qui convertit les fichiers GEDCOM en base de données MySQL. (j’ai prie contact avec le concepteur, pas de réponse actuellement))

2° Transfert vers SPIP

3° Exportation GEDCOM

Cahier des charges

liste les fonctions intéressantes, manquantes dans chaque techno open-source, les points forts et faibles sur les plateformes de généalogie en ligne

-  SPIP-Genea

  • Avantages

Certains champs de la base sont alimentés en fonction du contenu d’une liste de données prédéfinies

  • Inconvénients

le plugin n’a pas bougé depuis six ans

  • Manques

-  GENESPIP

  • Avantages

(édition publication, export/import) à la norme GEDCOM, on peut très bien se passer d’un autre soft.
une partie a été refondue pour SPIP 2 mais n’est pas fonctionnelle.

  • Inconvénients

l’import d’un fichier GEDCOM ne fonctionne pas,
il faut tout réécrire pour SPIP 3.

  • Manques

les événements SPIP, la géolocalisation, les médias et d’autres fonctions.


-  GENEWEB

  • Avantages

importe correctement les Gedcom
formulaire ajouter famille est bien fait

  • Inconvénients

les statistiques ? (manque de visibilité global)
L’ergonomie global et la navigation : j’accroche pas

  • Manques

un arbre global pour une navigation plus intuitive


-  WEBTREES

  • Avantages

très bien fait au niveau des fonctionnalités et de l’utilisation

fait trop bien le travail de recherches généalogiques

  • Inconvénients

toutes les données de webtrees ne sont pas (encore ?) sous forme de tables : certaines tables stockent même des morceaux de gedcom, pas faciles à traiter. Dommage parce qu’une table supplémentaire aurait sans doute pu permettre cette association.

Le fichier histo de webtrees permet d’ajouter des informations historiques basées sur les dates. Pourquoi ne pourrait-on pas aussi ajouter des informations sur les lieux. Pour moi, c’est un manque de webtrees.

L’organisation du code de webtree me fait peur (vraiment) : on aura du mal a faire un plugin passerelle ou intégré à SPIP

  • Manques

pouvoir relier, si utile, mes articles généalogiques à ma base de données.

pouvoir passer dans un sens (généalogie => info lieux) comme dans l’autre (info lieux => individus et/ou familles concernés).


-  KUTJARA

  • Avantages
  • Inconvénients
  • Manques

-  GENI & GENOOM

  • Avantages

très graphiques

  • Inconvénients

Coût non négligeable de l’abonnement. L’utilisateur optant pour la stricte gratuité n’a accès qu’à peu de fonctions ; Site anglophone ; Module d’import de Gedcom désactivé

les fonctions d’import/export GEDCOM ne sont pas fonctionnelles
privilégient surtout la mise en forme de l’arbre et les données sur les personnes proches.

En novembre 2012, Geni a été acquis par MyHeritage

  • Manques

ne fonctionne pas sous Safari

impossible de relier deux arbres


-  FAMILYSEARCH

  • Avantages

FamilySearch est un organisme généalogique créé et géré par l’Église de Jésus-Christ des Saints des Derniers Jours. Il s’agit de la plus grande organisation généalogique au monde. (mormons)

Navigation intuitive par arbres éventail, portrait, traditionnel ou descendance

Le formulaire de rajout de personne est simple, on peut s’en inspirer pour le réaliser avec le plugin Formidable

  • Inconvénients

n’accepte pas les fichiers GEDCOM contenant plus de 1 000 personnes

  • Manques

-  GENEATIQUE

  • Avantages
  • Inconvénients
  • Manques

-  MYHERITAGE

  • Avantages
  • Inconvénients
  • Manques

-  ANCESTRY

  • Avantages
  • Inconvénients
  • Manques

-  GENEALOGIE.COM

  • Avantages
  • Inconvénients
  • Manques

-  GENEANET

  • Avantages
  • Inconvénients
  • Manques

-  Plugins SPIP

Listons les plugins susceptibles d’être retenus pour le développement :

Structure

-  Quels Besoins ?

  • Statistiques
    Les quelques chiffres clefs de cet arbre généalogique
  • Liste de patronymes
    Liste de l’ensemble des patronymes contenus dans cet arbre généalogique
  • Liste des individus
    Liste de l’ensemble des individus portant un même patronyme
  • Liste des unions
    Liste des unions contenues dans cet arbre généalogique
  • Pyramides des âges
    Liste des individus par longévité
  • Liste des lieux
    Liste de l’ensemble des lieux liés à un événement ou à un individu

-  Présentation de l’arbre

    • [Présenter un arbre généalogique avec du css3 et html5](http://thecodeplayer.com/walkthrough/css3-family-tree) ;
    • pas de flash pour les présentations d’arbres : css3 et javascript uniquement (ou alors faut laisser le choix , voir basculer suivant le périphérique) ;
    • interface responsive (surtout tablette) ;
    • pouvoir éditer les arbres avec un logiciel multi-plateforme (linux/mac/win) en off-line pour ensuite publier (certains sont parfois à la campagne et n’ont pas une connexion très rapide, et pas de serveur sql + php installé sur leur machine) ;
    • ... l’autre solution étant de faire une clé USB bootable avec le tout installé dessus).

-  Choix des tables (quel type & quel interclassement)
ci-dessous le listing des tables utilisées par les plugins SPIP « genespip » & « spip-généa »

Plugin genespip
Plugin genea
spip_genespip_documents _genea_doc_sources
Elle établie le lien entre un document et une fiche d’individu, d’un évènement ou d’une source.
spip_genespip_evenements _genea_evt
Elle rassemble l’intégralité des évènements liés à un individu.
spip_genespip_individu _genea_individus
Elle regroupe les informations de base concernant un individu.
spip_genespip_journal
spip_genespip_lieux
spip_genespip_liste
spip_genespip_parametres
spip_genespip_tempo
spip_genespip_type_evenements
_genea
Elle permet de faire le lien entre la rubrique SPIP qui contient l’arbre généalogique et les différents éléments composants celui-ci.
_genea_familles
Elle contient l’ensemble des unions qu’elles soient officialisées ou non.
_genea_participes
Elle gère le lien entre un individu et un évènement.
_genea_sosa
Elle liste l’ensemble des individus faisant partie de l’ascendance directe de l’individu principal.
_genea_sources
Elle intègre l’ensemble des sources liées à un individu ou un évènement.
_genea_notes
Elle regroupe l’ensemble des notes accompagnant la fiche soit d’un individu soit d’un évènement.

-  Quelles informations sont nécessaires pour un individu ?

  • sosa
  • nom
  • prenom
  • sexe
  • date_naissance
  • ville_naissance
  • dep_naissance
  • date_deces
  • ville_deces
  • dep_deces
  • pere
  • mere
  • frere/soeur
  • conjoint(s)
  • date_mariage
  • ville_mariage
  • dep_mariage
  • enfant
  • profession

Roadmap

Qui peut faire quoi ?

Nom Tâches
Mailou beta testeur Gestion de la liste Mist. GraphX code
Jérôme code
poupardzelani Gestion de la liste
roland expérimentateur/testeur
Sylvain_LD Grammaire & Orthographe
Commun article de spip-contrib

Contributions

-  Cet article n’est pas figé, il évolue au gré des humeurs et des billets des contributeurs.

-  Cette page est un moyen d’échange d’idées pour tous ceux qui souhaiteraient collaborer à ce projet et à l’écriture de cette page.

Discussion

3 discussions

  • 1

    Bonjour à toutes et tous, je me tourne vers vous car fan de généalogie je cherche a faire un site sur la généalogie de ma famille, j ai vue que la contribution était en travaux !!! il y a t’il une solution qui fonctionne sous spip ?
    merci pour vos reponses.

    • Hello,

      Non plus de travaux en cours actuellement à ma connaissance, beaucoup de demandes et de souhaits, mais pas de buget temps pour le developpement qui était à reprendre de 0.

      Depuis de nouveaux outils de généalogie plus performants qui était déjà sur le marché ont due progresser, le format d’échange de données standardisé aussi avait évolué de mémoire ...

    Répondre à ce message

  • Bonjour à la liste,
    Bientôt deux ans que je suis absent, j’essaie de reprendre contact mais j’ai l’impression que la liste n’existe plus, si quelqu’un me capte
    Merci de me faire signe

    Répondre à ce message

  • 1

    Bonjour
    Je viens de traiter l’importation de fichiers gedcom dans la base généalogie de l’association des Mermet.
    J’utilise le plugin Genespip gedcom Import qui ne fonctionne qu’avec une version 1.9 de spip.
    J’ai donc fait des modifications dans les fonctions d’import pour réussir ce traitement : sur l’encodage des caractères, sur les requetes update et insert pour traiter les apostrophes.
    J’ai supprimé également les limites liées au taille de fichier.

    Ayant beaucoup de données (25 000 individus) il m’a fallu également modifier les index des tables spip_genespip_xxx pour avoir des performances honorables.

    Pour terminer, je migre la généalogie vers un spip 3 où j’ai créé un plugin avec La Fabrique qui traitent les tables spip_genespip_xxx existantes.

    Voilà pour ma contribution sous forme d’expérience dont je souhaite faire profiter les personnes qui reprenne ce travail. Vous pouvez me contacter en direct.
    Jérôme

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom