liste-prenoms-nouveaux-nes 1.1.2

Spécification de la liste annuelle des prénoms des nouveaux-nés déclarés à l'état-civil.

La liste annuelle des prénoms des nouveaux-nés est un jeu de données simple et très apprécié du public. Il consiste en une liste de prénoms avec l'occurrence de chacun pour une année donnée. Les prénoms listés correspondent au premier prénom donné dans chaque acte de naissance de l'état-civil.

Ce schéma décrit le détail de chaque champ. Pour chacun, nous fournissons également l'expression rationnelle informatique (ou "regexp") qui permet de contrôler le contenu du champ.

La dernière version de cette spécification est disponible à l'adresse : https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes

Origine du standard

Ce standard a tout d'abord été élaboré à partir du recueil et de l'observation des fichiers produits en open data par plusieurs communes françaises, publiés dès 2012. Il s'est nourri de l'observation des usages et a puisé également dans les textes de lois ou textes de référence qui standardisent la forme des prénoms en français.

Textes de loi et de référence

Schéma au format Table Schema

Table Schema est une sorte de "dictionnaire de données" qui permet de valider automatiquement un fichier CSV. Il offre donc une spécification précise du fichier. Il permet également de documenter le format d'un fichier. Il s'agit d'un fichier au format JSON. La spécification de la liste annuelle des prénoms des nouveaux-nés est établie sous cette forme : https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/1.1/prenom-schema.json

Exemples de fichiers CSV

TODO

  • Mieux spécifier le nom de la commune pour encourager les communes à choisir un nom normalisé (INSEE, par exemple)
  • Spécifier le nombre d'occurrences sous forme d'int ET le contraindre à une valeur inférieure à 99 999 ?
  • Gérer le cas où les prénoms contiennent des espaces, ce qui semble permis depuis 2011, comme le montre notamment le jeu de données d'Avignon
  • Résourdre les problèmes de branches/tags

Process d'évolution

  • À partir de la version 1.1, nous adoptons la pratique du "versionnement sémantique"
  • Pour chaque nouvelle version :
    • Dans le fichier JSON de la spec :
      • on effectue les changement de fond
      • on change le champ "version"
        • on change le champ "created" avec la date de modification
        • on change le champ "uri" auquel on donne le nom de la branche
      • on change le champ "previous" auquel on donne le nom de la version stable précédente
      • on change éventuellement champ "example"
    • On documente le changement dans la rubrique "historique du readme"
    • On change la version dans le titre de la spec.
  • Lorsqu'une nouvelle version est prête on la tague en veillant à ce que le tag soit cohérent avec le champ "uri" du fichier JSON.

Historique

  • 2018-05-16 : v1.1.2
    • version rétro-compatible avec la 1.1, sans aucun impact sur les données
    • spécification du délimiteur de colonnes CSV ","
    • utilisation du type "enum" à la place de "pattern"
  • 2018-04-12 : v.1.1.1
    • version rétro-compatible avec la 1.1, sans aucun impact sur les données
    • changement de la regex de contrôle des prénoms pour accepter O'brian et pas seulement O'Brian
    • changement de la regex pour les lettres liées : AE et OE (exemple : Ægir, Œdipe, Læticia, Cœur)
    • on précise bien qu'il s'agit du lieu de naissance et non du lieu de résidence
  • 2018-02-13 : v1.1
    • alignement avec la version 1.1 d'OpenDataFrance : les deux specs sont désormais compatibles au niveau de l'ordre et du nom des champs
      • changement du titre : ajout de "déclarés à l'état-civil"
      • changement des noms de champs : COMMUNE devient COMMUNE_NOM, CODE_INSEE devient COLL_INSEE, SEXE_ENFANT devient ENFANT_SEXE, PRENOM devient ENFANT_PRENOM et NOMBRE_D_OCCURRENCES devient NOMBRE_OCCURENCES
    • dans la spec au format Table Schema :
      • le champ ANNEE est désormais au format "year"
      • changement de la regexp de ENFANT_PRENOM pour rendre invalide JeanRenaud
    • publication d'un fichier de test valide
    • publication d'un fichier de test invalide
    • publication du fichier goodtables.yml pour permettre au service goodtables.io de valider les données de test
  • 2018-02-13 : publication par OpenDataFrance d'une version "1.1" sur le Socle commun des données locales d'Opendata Locale, sous le titre "Prénoms des nouveaux-nés. Liste annuelle des prénoms des nouveaux-nés déclarés à l’état-civil" : http://opendatalocale.net/presentation-de-chaque-jeu-et-de-sa-normalisation-precise/
    • par rapport à la version 1.0 d'OpenDataFrance :
      • le nom de la commune (COMMUNE_NOM) fait son retour, en lieu et place du nom de la collectivité (COLL_NOM), car il est moins ambigü
      • le nom de la commune n'est pas obligatoire
      • le titre de la spec est plus clair, "Prénoms des nouveaux-nés"
  • 2018-01-31 : publication par OpenDataFrance d'une version "1.0", qui n'est que la validation de la 1.0(beta)
  • 2018-01-19 : rétro-publication des versions 0.5beta et 0.7beta sur Github, afin de garder un historique des modifications et une URL plus pérenne
  • 2017-11-29 : publication par la Ville de Digne-les-Bains d'une première version compatible avec la version 1.0 (beta) du Socle commun des données locales, source : https://twitter.com/mairiedigne/status/935878333174370305
  • 2017-06-13 : publication par OpenDataFrance d'une version "1.0 (beta)" sur le Socle commun des données locales d'Opendata Locale, sous le titre "Prénoms. Liste annuelle des prénoms des nouveaux-nés déclarés à l’état-civil" : http://opendatalocale.net/presentation-de-chaque-jeu-et-de-sa-normalisation-precise/
    • il s'agit d'une version réécrite par OpenDataFrance de la 0.5beta :
      • les noms des colonnes ont presque tous changé
      • certains exemples ont été réécris (NOMBRE_OCCURENCES...)
      • le nom de la commune a été remplacé par le nom de la collectivité (COLL_NOM)
      • le nom de la collectivité est devenu obligatoire
      • le nom de la collectivité est ambigu lorsqu'on compare son objet "Nom officiel de la collectivité" et l'exemple donné "Ville de Nice" ; par ailleurs, "Ville de Nice" n'est pas intuitif pour le grand public qui, dans un index alphabétique, recherchera plus naturellement "Nice"
      • le document n'est pas historisé si bien qu'on ne sait pas qui a changé quoi et pourquoi
      • les différents auteurs ne sont pas mentionnés
      • il n'existe pas d'adresse email pour remonter des éventuels problèmes
      • il n'existe pas d'URL de référence pour suivre l'évolution du standard
      • le titre majeur, "Prénoms", est vague et peut prêter à confusion
      • le sous-titre est plus clair car il spécifie "déclarés à l'état-civil"
      • ajout de références utiles intéressantes : "Déclaration de naissance" sur les sites service-public.fr et wikipedia.
    • le document est un Google doc à cette adresse : https://docs.google.com/document/d/1Vk0kpBw3MIocai9JqovLK2HxcUA_3QHnZicqxuOpcQ8/edit#
  • 2017-04-26 : v0.7beta (diff) ; principaux changements :
    • dans la description, précision qu'il s'agit du premier prénom
    • URL vers un fichier d'exemple
  • 2017-03-26 : v0.5beta
  • 2017-03 : premières versions non publiées.

Carte d'identité du schéma

Modèle de données

Ce modèle de données repose sur les 6 champs suivants correspondant aux colonnes du fichier tabulaire.

COMMUNE_NOM

  • titre : Commune concernée
  • description : Nom de la commune où les prénoms sont enregistrés à l'état-civil, c'est-à-dire le lieu de naissance. Le lieu de naissance peut être différent du lieu de résidence des parents, comme cela peut être le cas pour les enfants nés dans une maternité. Le renseignement de ce champ est facultatif. Il permet cependant de faciliter l'usage des données, notamment par le grand public.
  • type : chaîne de caractères
  • valeur optionnelle
  • motif : ^(Le |La |Les |Los |Aux |L'|)([A-ZÉÇŒÈÎ])(((-| | - |')[A-ZÉÇŒÈÎ])|('|-| |)[a-zàâéèêëïîÿôûüœç])*( \([A-Z][a-z]*\)|)$

COLL_INSEE

  • titre : Code INSEE
  • description : Code INSEE de la commune où les prénoms sont enregistrés à l'état-civil, c'est-à-dire le lieu de naissance. Issu du Code officiel géographique, le "code INSEE" est composé de 5 caractères alphanumériques (les deux premiers correspondent au département et peuvent donc contenir les lettres A et B, utilisées pour la Corse).
  • type : chaîne de caractères
  • valeur obligatoire
  • motif : ^([013-9]\d|2[AB1-9])\d{3}$

ENFANT_SEXE

  • titre : Sexe relatif au prénom
  • description : Sexe correspondant au prénom : M ou F ou I, respectivement pour masculin, féminin ou intersexué/indéterminé. L'information est importante car certains prénoms sont aussi bien masculins que féminin, comme Camille. "I" signale un genre spécifiquement intersexué ou indéterminé ; il ne mentionne pas un sexe inconnu. "I" n'est théoriquement pas encore utilisé en France mais plusieurs pays on créé un tel statut et de nombreux éléments suggèrent une évolution prochaine du droit en France (affaires judiciaires, recommandations d'experts juridiques, demandes des associations, etc.).
  • type : chaîne de caractères
  • valeur obligatoire
  • valeurs autorisées : ["M","F","I"]

ENFANT_PRENOM

  • titre : Prénom
  • description : Prénom de nouveau(x)-né(s) constaté comme premier prénom dans les actes d'état-civil de l'année correspondante. Un acte de naissance peut désigner un nouveau-né avec plusieurs prénoms et le législateur a prévu que "tout prénom inscrit dans l'acte de naissance peut être choisi comme prénom usuel." (article 52 du Code Civil). La plupart du temps le premier prénom est le prénom d'usage initialement choisi par le(s) parent(s). Cette spécification ne retient donc que le premier prénom : si un nouveau-né est appelé "Armelle Julia Blanche", seul "Armelle" sera retenu pour constituer ce jeu de données. Un prénom composé comme Marie-Jeanne compte pour un prénom complet. Le site service-public.fr signale que "l'alphabet utilisé doit être celui qui sert à l'écriture du français. Les caractères alphabétiques étrangers ne sont donc pas autorisés (par exemple le « ñ »)". Outre les caractères alphabétiques, un prénom peut posséder un trait d'union, voire deux, comme dans Lou-Anne ou Mohamed-El-Amine. Des prénoms peuvent posséder une apostrophe comme dans Gwenc'Hlan ou N'Deye, voire peut-être deux. Nous considérons aussi qu'un prénom pourrait terminer voire débuter par une apostrophe -- cette dernière étant parfois utilisé en français pour marquer la suppression de la finale ou du début d'un mot, comme dans Boul' Mich'.
  • type : chaîne de caractères
  • valeur obligatoire
  • motif : ^'?[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆ][a-zéàèùäëïüöÿâêîôûŷçæœ]*(|'|(('[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆa-zéàèùäëïüöÿâêîôûŷçæœ][a-zéàèùäëïüöÿâêîôûŷçæœ]*'?){1,2}|(-[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆ][a-zéàèùäëïüöÿâêîôûŷçæœ]*'?){1,2}){1,5})$

NOMBRE_OCCURRENCES

  • titre : Nombre d'occurrences
  • description : Nombre d'occurrences du prénom pour l'année correspondante. Tous les prénoms sont comptabilisés, y compris les prénoms uniques -- un seuil minimum est exclu car il conduirait à passer sous silence une importante part des naissances, voire la totalité dans les petites communes. La valeur de ce champ est donc un nombre entier d'un à 6 chiffres maximum, 0 étant exclu.
  • type : chaîne de caractères
  • valeur obligatoire
  • motif : ^[1-9]\d{0,5}$

ANNEE

  • titre : Année
  • description : Année de relevé, sur quatre chiffres.
  • type : année
  • valeur obligatoire
  • motif : ^[1-2]\d\d\d$

results matching ""

    No results matching ""