Unverified Commit 11bc975d authored by Charles Nepote's avatar Charles Nepote Committed by GitHub
Browse files

Merge pull request #11 from OpenDataFrance/v1.1.3

V1.1.3
parents 2f3454fd f402250e
# Changelog
# 1.1.2 -> 1.1.3
* version rétro-compatible avec la 1.1, sans aucun impact sur les données
* le champ NOMBRE_OCCURENCES est désormais spécifié come "int" (soit un nombre) et sa valeur comprise entre 1 et 999999
* amélioration des titres et descriptions
## 1.1.1 -> 1.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"
## 1.1 -> 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
\ No newline at end of file
Le modèle de données relatif aux prénoms des nouveaux-nés déclarés à l’état-civil spécifie la structure et le contenu d'un jeu de données simple et très apprécié du public. Il consiste en une liste de prénoms déclarés à l'état-civil de la commune de naissance, 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.
Il a été élaboré par [Charles Népote](mailto:charles.nepote@fing.org) à 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.
La source de cette spécification est disponible sur le [dépôt Github de Charles Nepote](https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes). Si nécessaire, elle sera mise à jour, adaptée et consolidée à partir de cette même source.
\ No newline at end of file
# liste-prenoms-nouveaux-nes 1.1.2
# liste-prenoms-nouveaux-nes 1.1.3
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.
......@@ -26,7 +26,6 @@ https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/1.1/prenom-sche
## 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
......@@ -45,6 +44,9 @@ https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/1.1/prenom-sche
* 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-11-30 : **[v.1.1.3](https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/releases/tag/v1.1.3)**
* version rétro-compatible avec la 1.1, sans aucun impact sur les données
* Le champ NOMBRE_OCCURENCES est désormais spécifié come "int" (soit un nombre) et sa valeur comprise entre 1 et 999999
* 2018-05-16 : **[v1.1.2](https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/tree/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 ","
......
La spécification du modèle de données peut être utilement complétée par les documents suivants :
* [Fichier gabarit à télécharger au format xlsx](https://scdl.opendatafrance.net/docs/templates/scdl-prenoms.xlsx)
* [Schéma de validation](https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/v1.1.2/prenom-schema.json)
Pour poser une question, commenter, faire un retour d’usage ou contribuer à l’amélioration du modèle de données, vous pouvez :
* adresser un message à [scdl@opendatafrance.email](mailto:scdl@opendatafrance.email?subject=Prénoms)
* ouvrir un ticket sur le [dépôt Github de Charles Nepote](https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/issues/new)
{
"$schema": "https://git.opendatafrance.net/validata/goodtables-checks-schema/raw/v0.2/goodtables_checks_schema.json",
"title": "Validations personnalisées en complément du schéma SCDL Prénoms",
"author": "Christophe Benz, Jailbreak",
"version": "1.1.2",
"created": "2018-09-26",
"homepage": "https://git.opendatafrance.net/scdl/prenoms",
"pre_checks": [
{
"name": "column-delimiter",
"params": {
"delimiter": ","
}
}
]
}
# YML file with inspired from https://github.com/Stephen-Gates/data-package-examples/blob/master/goodtables.yml
# goodtables.yml should conform to the format at https://github.com/frictionlessdata/goodtables.io/blob/master/goodtablesio/schemas/job-conf.yml
# See also : https://github.com/frictionlessdata/goodtables.io/blob/master/docs/configuration/goodtables_yml.md
# validate all csv files without reference to the datapackages
#
# files: '*.csv'
# validate a mixture of csv files optionally with a tableschema
#
files:
- source: 'prenoms-nouveaux-nes.exemple.1.1.csv'
schema: 'prenom-schema.json'
encoding: utf-8
- source: 'prenoms-nouveaux-nes.exemple.invalide.1.1.csv'
schema: 'prenom-schema.json'
encoding: utf-8
- source: 'DIGNE-PRENOMS-2017.csv'
schema: 'prenom-schema.json'
encoding: utf-8
{
"$schema": "https://frictionlessdata.io/schemas/table-schema.json",
"title": "Spécification de la liste annuelle des prénoms des nouveaux-nés déclarés à l'état-civil",
"author": "Charles Nepote <charles.nepote@fing.org>",
"contributor": "Simon Chignard, Bernadette Kessler, Christian Quest, Christophe Benz",
"version": "1.1.2",
"created": "2018-04-12",
"description": "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 déclarés à l'état-civil de la commune de naissance, 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.\n\nCe 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.\n\n",
"name": "scdl-prenoms",
"title": "Prénoms des nouveaux-nés",
"description": "Spécification du modèle de données relatif aux prénoms des nouveaux-nés déclarés à l’état-civil.",
"countryCode": "FR",
"homepage": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes",
"uri": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/v1.1.2/prenom-schema.json",
"previous": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/blob/v1.1.1/prenom-schema.json",
"example": "https://gist.githubusercontent.com/CharlesNepote/48a73b05762d0e49bcc26d5ea5265a75/raw/1fa1a085a793e6925991b0dc6a07d653d3726506/prenom-nouveaux-nes.exemple.1.1.csv",
"path": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/raw/v1.1.3/schema.json",
"resources": [
{
"title": "Fichier des prénoms Digne 2017 (valide)",
"path": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/raw/master/DIGNE-PRENOMS-2017.csv"
},
{
"title": "Exemple de fichier des prénoms invalide",
"path": "https://github.com/CharlesNepote/liste-prenoms-nouveaux-nes/raw/master/prenoms-nouveaux-nes.exemple.invalide.1.1.csv"
}
],
"sources": [
{
"title": "Code civil",
"path": "https://www.legifrance.gouv.fr/affichCode.do?cidTexte=LEGITEXT000006070721&dateTexte=20170327"
},
{
"title": "Circulaire du 28 octobre 2011 relative aux règles particulières à divers actes de l'état civil relatifs à la naissance et à la filiation — NOR : JUSC1119808C",
"path": "http://www.textes.justice.gouv.fr/art_pix/JUSC1119808C.pdf"
},
{
"title": "Circulaire du 23 juillet 2014 relative à l’état civil — NOR : JUSC1412888C",
"path": "http://circulaire.legifrance.gouv.fr/pdf/2014/07/cir_38565.pdf"
},
{
"title": "Normes techniques de l'INSEE",
"path": "http://xml.insee.fr/schema/etat-civil/"
}
],
"created": "2018-04-12",
"lastModified": "2019-01-23",
"version": "1.1.3",
"contributors": [
{
"title": "Charles Nepote",
"role": "author",
"email": "charles.nepote@fing.org"
},
{
"title": "Simon Chignard",
"role": "contributor",
"email": "simon.chignard@data.gouv.fr"
},
{
"title": "Bernadette Kessler",
"role": "contributor"
},
{
"title": "Christian Quest",
"role": "contributor"
},
{
"title": "Christophe Benz",
"role": "contributor",
"email": "christophe.benz@jailbreak.paris"
},
{
"title": "Pierre Dittgen",
"role": "contributor",
"email": "pierre.dittgen@jailbreak.paris"
}
],
"fields": [
{
"name": "COMMUNE_NOM",
"title": "Commune concernée",
"title": "Nom de la commune d'enregistrement à l'état-civil",
"type": "string",
"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.",
"examples": "Rennes, Marseille, Brocas",
"examples": "Rennes",
"constraints": {
"required": false,
"pattern": "^(Le |La |Les |Los |Aux |L'|)([A-ZÉÇŒÈÎ])(((-| | - |')[A-ZÉÇŒÈÎ])|('|-| |)[a-zàâéèêëïîÿôûüœç])*( \\([A-Z][a-z]*\\)|)$"
......@@ -24,10 +81,10 @@
},
{
"name": "COLL_INSEE",
"title": "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).",
"title": "Code INSEE de la commune d'enregistrement à l'état-civil",
"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 de la commune](https://fr.wikipedia.org/wiki/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": "string",
"examples": "06088, 2B002 (pour une commune corse)",
"examples": "35238",
"constraints": {
"required": true,
"pattern": "^([013-9]\\d|2[AB1-9])\\d{3}$"
......@@ -37,45 +94,50 @@
"name": "ENFANT_SEXE",
"title": "Sexe relatif au prénom",
"type": "string",
"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.).",
"description": "Sexe correspondant au prénom, codé '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éminins, comme 'Camille'. 'I' signale un genre spécifiquement intersexué ou indéterminé et, contrairement à ce qu'il pourrait laisser penser, il ne mentionne pas un sexe inconnu. 'I' n'est théoriquement pas encore utilisé en France mais plusieurs pays ont créé un tel statut et de nombreux éléments suggèrent une évolution prochaine du droit en France.",
"constraints": {
"required": true,
"enum": ["M", "F", "I"]
"enum": [
"M",
"F",
"I"
]
},
"examples": "F"
"examples": "M"
},
{
"name": "ENFANT_PRENOM",
"title": "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'.",
"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_](https://fr.wikipedia.org/wiki/Prénom_usuel)_\"_. 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. Attention, \"[_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 « ñ »)_](https://www.demarches.interieur.gouv.fr/particuliers/choix-prenom-enfant)\". 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 se terminer, voire débuter, par une apostrophe - cette dernière étant parfois utilisée en français pour marquer la suppression de la finale ou le début d'un mot, comme dans Boul' Mich'.",
"type": "string",
"constraints": {
"required": true,
"pattern": "^'?[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆ][a-zéàèùäëïüöÿâêîôûŷçæœ]*(|'|(('[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆa-zéàèùäëïüöÿâêîôûŷçæœ][a-zéàèùäëïüöÿâêîôûŷçæœ]*'?){1,2}|(-[A-ZÉÀÈÙÄËÏÖÜŸÂÊÎÔÛŶÇŒÆ][a-zéàèùäëïüöÿâêîôûŷçæœ]*'?){1,2}){1,5})$"
},
"examples": "\"Marianne\", \"Jean-Philippe\", \"Gwenc'Hlan\", \"O'Ryan\", \"Mohamed-El-Amine\""
"examples": "Adam"
},
{
"name": "NOMBRE_OCCURRENCES",
"title": "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": "string",
"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'1 à 6 chiffres maximum, 0 étant exclu.",
"type": "integer",
"constraints": {
"required": true,
"pattern": "^[1-9]\\d{0,5}$"
"minimum": 1,
"maximum": 999999
},
"examples": "\"1\", \"102\", \"5\", \"10\", \"1053\""
"examples": "353"
},
{
"name": "ANNEE",
"title": "Année",
"description": "Année de relevé, sur quatre chiffres.",
"description": "Année de relevé, sur quatre chiffres, au format AAAA.",
"type": "year",
"constraints": {
"required": true,
"pattern": "^[1-2]\\d\\d\\d$"
},
"examples": "\"2005\", \"1992\", \"1886\""
"examples": "2016"
}
]
}
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment