Commit 7405b3e1 authored by pascal romain's avatar pascal romain
Browse files

revision 0.9

parent ecc62271
This diff is collapsed.
......@@ -5,15 +5,15 @@
"description": "Schéma permettant de décrire les menus des repas proposés par des collectivités locales et des établissements publics. Il permet de préciser les modalités de distribution et le contenu des menus proposés (les plats). Le choix a été fait de détailler chaque plat sur une ligne. Pour décrire un menu il faut donc répéter certaines informations plusieurs fois (voir exemple).",
"countryCode": "FR",
"homepage": "https://git.opendatafrance.net/scdl/menus-collectifs",
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0.7/schema.json",
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0/.9schema.json",
"resources": [
{
"title": "Exemple de fichier de menus valide en csv",
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0.7/examples/menus-collectifs_valide.csv"
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0.9/examples/menus-collectifs_valide.csv"
},
{
"title": "Exemple de fichier de menus valide en Office Open XML",
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0.7/examples/menus-collectifs_valide.xlsx"
"path": "https://git.opendatafrance.net/scdl/menus-collectifs/raw/v0.9/examples/menus-collectifs_valide.xlsx"
}
],
"sources": [
......@@ -39,13 +39,9 @@
}
],
"created": "2020-02-12",
"lastModified": "2021-02-05",
"version": "0.7",
"lastModified": "2021-03-09",
"version": "0.9",
"contributors": [
{
"title": "OpenDataFrance",
"role": "author"
},
{
"title": "Pascal Romain",
"organisation": "Rhizome data",
......@@ -93,13 +89,19 @@
"organisation": "Salamandre",
"email": "j.desplats@salamandre.tm.fr",
"role": "contributor"
},
{
"title": "Sébastien Puertas",
"organisation": "Datameal",
"email":"s.puertas@datameal.fr",
"role": "contributor"
}
],
"fields": [
{
"name": "collectiviteNom",
"title": "Nom de la collectivité qui produit les données",
"description": "Nom officiel de la collectivité qui produit les données.",
"description": "Nom officiel de la collectivité ou de l'établissement public responsable de l'offre de restauration collective et qui produit les données.",
"type": "string",
"examples": "Grand Poitiers Communauté urbaine",
"constraints": {
......@@ -120,7 +122,7 @@
{
"name": "etablissementNom",
"title": "Nom de l'établissement ou entreprise qui a produit le repas servi",
"description": "Nom officiel de l'établissement qui est à l'origine de la production du repas.",
"description": "Nom officiel de l'établissement qui est à l'origine de la production du repas. Il s'agit soit d'une régie, soit d'un syndicat mixte, soit d'un prestataire de service.",
"type": "string",
"examples": "Syndicat intercommunal à vocation unique de Poitiers",
"constraints": {
......@@ -130,7 +132,7 @@
{
"name": "etablissementSiret",
"title": "Code SIRET de l'établissement ou entreprise qui a produit le repas servi.",
"description": "Identifiant du Système d'Identification du Répertoire des Etablissements (SIRET) de la collectivité qui confectionné le menu, composé de 9 chiffres SIREN + 5 chiffres NIC d’un seul tenant.",
"description": "Identifiant du Système d'Identification du Répertoire des Etablissements (SIRET) de la collectivité qui confectionné le menu, composé de 9 chiffres SIREN + 5 chiffres NIC d’un seul tenant. Dans certains cas, l'établissement ne dispose pas de code SIRET. Ce champ est donc facultatif",
"type": "string",
"examples": "25330618700035",
"constraints": {
......@@ -141,7 +143,7 @@
{
"name": "restaurantNom",
"title": "Nom du restaurant où le repas est servi.",
"description": "Nom officiel de l'établissement au sein duquel est servi le menu.",
"description": "Nom officiel de l'établissement (une école, un lycée, une résidence pour personne âgée, un restaurant administratif, etc...) au sein duquel est servi le menu.",
"type": "string",
"examples": "école élémentaire Flornoy",
"constraints": {
......@@ -151,7 +153,7 @@
{
"name": "restaurantInsee",
"title": "Le code INSEE de la commune d'implantation du restaurant",
"description": "Code Insee de la commune dans laquelle se situe le restaurant dans lequel a été servi le menu.",
"description": "Code Insee de la commune dans laquelle se situe le restaurant où est servi le menu.",
"type": "string",
"examples": "86194",
"constraints": {
......@@ -162,7 +164,7 @@
{
"name": "restaurantId",
"title": "Identifiant du restaurant où le repas est servi.",
"description": "Identifiant du restaurant dans lequel a été servi le menu soit en utilisant le code SIREN soit le numéro d'identification fourni par l'Éducation Nationale pour les établissements scolaires soit un identifiant interne. Le champ restaurantIdType permet de caractériser le type de système d'identification auquel cet identifiant fait référence.",
"description": "Identifiant du restaurant dans lequel a été servi le menu. Si le restaurant dispose d'une raison sociale, il est possible d'utiliser son numéro SIRET. Si le restaurant est un établissement scolaire il est possible de l'identifier avec le code UAI de l'établissement. Sinon, il est possible d'utiliser un identifiant interne de gestion. Le champ restaurantIdType permet de caractériser le type de système d'identification auquel cet identifiant fait référence.",
"type": "string",
"examples": "25330618700017",
"constraints": {
......@@ -172,13 +174,13 @@
{
"name": "restaurantIdType",
"title": "Type d'identifiant utilisé pour caractériser un restaurant collectif.",
"description": "Afin de permettre d'identifier de manière unique chaque restaurant, plusieurs systèmes d'identification peuvent être utilisé en l'absence d'une attribution systématique d'un code SIRET. Pour les établissements scolaires le numéro UID délivré par l'Éducation Nationale (EN) peut être utilisé. Dans le cas des autres (identifiant interne par exemple), la valeur autre doit être sélectionnée. Enfin en l'absence d'identifiant la valeur \"Sans\" peut-être sélectionnée.",
"description": "Afin de permettre d'identifier de manière unique chaque restaurant, plusieurs systèmes d'identification peuvent être utilisé en l'absence d'une attribution systématique d'un code SIRET. Pour les établissements scolaires le numéro UAI délivré par l'Éducation Nationale (EN) peut être utilisé. Dans le cas des autres (identifiant interne par exemple), la valeur autre doit être sélectionnée. Enfin en l'absence d'identifiant la valeur \"Sans\" doit être sélectionnée. Ce champ est donc obligatoire.",
"type": "string",
"examples": "Siret",
"constraints": {
"required": false,
"required": true,
"enum": [
"Siret",
"SIRET",
"EN",
"Autre",
"Sans"
......@@ -188,7 +190,7 @@
{
"name": "restaurantType",
"title": "Type de restaurant auquel le menu est proposé.",
"description": "Permet de préciser le type d'établissement destinataire du menu proposé parmi les valeurs disponibles (crèche, maternelle, élémentaire, collège, lycée, administration, résidence sénior, EHPAD, repas à domicile, centre de loisirs ou tous si les convives sont indifférenciés)",
"description": "Permet de préciser le type d'établissement destinataire du menu proposé parmi les valeurs disponibles (crèche, maternelle, élémentaire, collège, lycée, administration, résidence sénior, EHPAD, repas à domicile, centre de loisirs ou tous si les convives sont indifférenciés). Si vous ne trouvez pas de valeur qui corresponde à votre usage dans cette liste, vous pouvez saisir la valeur \"autre\".",
"type": "string",
"examples":"collège",
"constraints": {
......@@ -204,6 +206,7 @@
"EHPAD",
"repas à domicile",
"centre de loisirs",
"tous",
"autre"
]
}
......@@ -211,7 +214,7 @@
{
"name": "restaurantConvive",
"title": "Type de convive auquel le menu est proposé.",
"description": "Permet de préciser le type de public, à l'intérieur d'un type de restaurant, destinataire du menu proposé. Valeur par défaut 'tous' ",
"description": "Permet de préciser le type de public, à l'intérieur d'un type de restaurant, destinataire du menu proposé. Si plusieurs publics sont destinataires d'un même menu au sein d'un même restaurant, vous pouvez détailler la liste des convives en séparant les valeurs par un point virgule (\"petite section\" ; \"grande section\"). La valeur par défaut poiur ce champ est 'tous' ",
"type": "string",
"examples":"étudiants",
"constraints": {
......@@ -231,7 +234,7 @@
{
"name": "menuTypeRepas",
"title": "Type du repas servi",
"description": "Permet de spécifier le type du repas parmi les valeurs possibles (petit-déjeuner, déjeuner, goûter, dîner, collation, pique-nique).",
"description": "Permet de spécifier le type du repas parmi les valeurs possibles (petit-déjeuner, déjeuner, goûter, dîner, collation, pique-nique). Dans le cas où vous ne trouvez pas la valeur correspondant à votre usage dans la liste proposée, vous pouvez saisir la valeur \"autre\".",
"type": "string",
"examples": "déjeuner",
"constraints": {
......@@ -250,7 +253,7 @@
{
"name": "menuTypePlat",
"title": "Type de plat servi",
"description": "Le type de plat correspond à un des éléments disponibles dans la liste (entrée, plat principal, garniture, dessert, produit laitier, pain).",
"description": "Le type de plat correspond à un des éléments disponibles dans la liste (entrée, plat principal, garniture, dessert, produit laitier, pain). Dans le cas où vous ne trouvez pas la valeur correspondant à votre usage dans la liste proposée, vous pouvez saisir la valeur \"autre\".",
"type": "string",
"examples": "entrée",
"constraints": {
......@@ -269,9 +272,9 @@
{
"name": "menuNomPlat",
"title": "Nom du plat servi",
"description": "Le nom du plat permet de désigner dans la limite de 160 caractères maximum les éléments composant le menu. Afin de faciliter le regroupement des informations, favorisez les noms courts en utilisant une majuscule initiale. Lorsque plusieurs ingrédients composent le plat, utilisez une virgule pour les séparer.",
"description": "Le nom du plat permet de désigner dans la limite de 160 caractères maximum les éléments composant le menu. Afin de faciliter le regroupement des informations, favorisez les noms courts en utilisant une majuscule initiale. Lorsque plusieurs ingrédients composent le plat, utilisez un point virgule pour les séparer.",
"type": "string",
"examples": "Jambon sec - Oeuf dur",
"examples": "Jambon sec ; Oeuf dur",
"constraints": {
"required": true,
"maxLength": 160
......@@ -287,60 +290,8 @@
"required": false
}
},
{
"name": "menuSiqoPlat",
"title": "Indication de signe officiel de la qualité ou du lieu de fabrication",
"description": "Des cahiers des charges permettent de reconnaître les produits qui bénéficient d’un signe officiel d'identification de la qualité et de l’origine (SIQO) : Agriculture biologique, Appellation d'origine protégée/contrôlée, Indication géographique protégée, Spécialité traditionnelle garantie, Label rouge. Il est possible de saisir plusieurs valeurs séparées par une virgule dans ce champ.",
"type": "string",
"examples": "Agriculture biologique",
"constraints": {
"required": false,
"enum": [
"Agriculture Biologique",
"Appellation d'origine protégée",
"Appellation d'origine contrôlée",
"Indication géographique protégée",
"Spécialité traditionnelle garantie",
"Label Rouge"
]
}
},
{
"name": "menuLabelPlat",
"title": "Indication de labels complémentaires liés à des approvisionnements locaux ou à des marques de fabrication",
"description": "Des labels complémentaires permettent d'identifier la production locale ou des marques associées à un territoire ou à une démarche de qualité. La saisie dans ce champ est libre. A titre d'exemple OpenFoodFacts propose un liste des labels existant dans sa base de données : https://fr.openfoodfacts.org/labels. Il est possible de saisir plusieurs valeurs séparées par une virgule dans ce champ. ",
"type": "string",
"examples": "Ferme des Jarouilles",
"constraints": {
"required": false
}
},
{
"name": "menuAllergenePlat",
"title": "Nom des allergènes présents dans le plat",
"description": "Enumération des éventuels allergènes (séparés par des virgules) présents dans le plat proposé. Actuellement la distinction n'est pas faite entre les allergènes présents du fait de la recette (fiche technique) ou sous forme de traces (lieu de production). Il est possible de saisir plusieurs valeurs séparées par une virgule dans ce champ.",
"type": "string",
"examples": "Fruits à coques",
"constraints": {
"required": false,
"enum": [
"Céréales contenant du gluten",
"Crustacés",
"Oeufs",
"Poissons",
"Arachides",
"Soja",
"Lait",
"Fruits à coques",
"Céleri",
"Moutarde",
"Graines de sésame",
"Anhydride sulfureux et sulfites",
"Lupin",
"Mollusques"
]
}
},
,
,
{
"name": "menuPrecisionPlat",
"title": "Précision thématique associée au plat ou à l'ensemble des plats d'un menu",
......@@ -354,9 +305,9 @@
{
"name": "menuRegimePlat",
"title": "Précision qualitative associée au plat d'un menu",
"description": "En fonction du type de convives ou de régimes alimentaires spécifiques, des plats de substitution peuvent être proposés. Ce champ peut permettre d'indiquer si un plat est destiné à un régime particulier (sans viande, végétarien, etc.). Il est possible de saisir plusieurs valeurs séparées par une virgule dans ce champ.",
"description": "En fonction du type de convives ou de régimes alimentaires spécifiques, des plats de substitution peuvent être proposés. Ce champ peut permettre d'indiquer si un plat est destiné à un régime particulier (sans viande, végétarien, etc.). Il est possible de saisir plusieurs valeurs séparées par un point-virgule dans ce champ.",
"type": "string",
"examples": "végétarien, sans sel, sans porc, sans sucre ajouté",
"examples": "végétarien; sans sel; sans porc; sans sucre ajouté",
"constraints": {
"required": false
}
......@@ -364,9 +315,9 @@
{
"name": "menuTexturePlat",
"title": "Précision qualitative associée à la texture du plat",
"description": "En fonction du type de convives ou de régimes alimentaires spécifiques, des modifications de texture peuvent être proposés. Ce champ peut permettre d'indiquer si un plat est destiné à êtr proposé sous différentes textures (normal, mixé, fondant, haché). Il est possible de saisir plusieurs valeurs séparées par une virgule dans ce champ.",
"description": "En fonction du type de convives ou de régimes alimentaires spécifiques, des modifications de texture peuvent être proposés. Ce champ peut permettre d'indiquer si un plat est destiné à être proposé sous différentes textures (normal, mixé, fondant, haché). Il est possible de saisir plusieurs valeurs séparées par un point-virgule dans ce champ.",
"type": "string",
"examples": "normal, haché",
"examples": "normal; haché",
"constraints": {
"required": true,
"enum": [
......@@ -378,6 +329,33 @@
]
}
},
{
"name": "menuNutri-scorePlat",
"title": "Indication de l'indice nutritif du plat proposé dans le menu",
"description": "Indique la valeur nutritive du plat en fonction des valeurs de l'indicateur nutriscore.",
"type": "string",
"examples": "C",
"constraints": {
"required": false,
"enum":[
"A",
"B",
"C",
"D",
"E"
]
}
},
{
"name": "menuPrixTheoriquePlat",
"title": "Coût théorique de revient du plat calculé à partir du coût de production",
"description": "Le prix de revient pour la structure de restauration collective est utilisé pour composer les plats et les menus en combinaison avec les impératifs d'équilibre nutritionnel.",
"type": "string",
"examples": "5€",
"constraints": {
"required": false
}
},
{
"name": "MenuPublicationPlatDate",
"title": "Date de publication de l'enregistrement d'un plat",
......
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