{ /* Dans ce bloc // veut dire commentaire sinon il faut utiliser / * et * / (sans espace) pour faire des commentaires Le format de la structure est le suivant: "Nom de la categorie":{ "parametre":"valeur", // permet de donner des indications pour l'affichage, principalement la couleur et l'orientation { // declare un enfant de la categorie, il sera dans la bulle de cette categorie "type1":"valeur1", // ici on declare un doublet (type,valeur) cela n'affichera que la valeur1 suivant le formattage de type1 "type2":["valeur2","valeur3"], // on peut associer aussi une liste de valeurs cela permet de faire une enumeration }, { // declare un autre enfant de la categorie, il sera mis a cote du precedent (suivant l'orientation) "type1":"valeur1", }, "children":{ //declare des liens qui vont servir a faire les connections entre les categories, le formatage doit donc etre le meme "":{ // ici la categorie n'a pas de nom et contient un seul element { "type3":"valeur1" } } } } */ "Direction": { /* Direction */ "color": "yellow", "style": "background-color: #FBAB7E;background-image: linear-gradient(16deg, #FBAB7E 0%, #F7CE68 100%);font-weight:400;", "childrenBorder":"false", { "statut": "Director", "nom": "Katell Guizien", "fonction": "DR, CNRS", "link" : "people/personnel-list/researchers/katell-guizien", }, { "statut": "Deputy Director", "nom": "Stéphane Hourdez", "fonction": "CR, CNRS", "link" : "people/personnel-list/researchers/stephane-hourdez", }, "children": { "": { /* Catégorie spéciale */ "color": "red", "style": "background-image: radial-gradient( circle farthest-corner at 10% 20%, rgba(253,101,133,1) 0%, rgba(255,211,165,1) 90% );font-weight: 400;", "floating": "left", { "statut": "Administrative and financial management", "nom": "Nathalie Guillory", "fonction": "AI, CNRS", "link":"people/personnel-list/technical-research-support-personnel/nathalie-guillory", }, }, "": { /* Catégorie spéciale */ "color": "red", "style": "background-image: radial-gradient( circle farthest-corner at 10% 20%, rgba(253,101,133,1) 0%, rgba(255,211,165,1) 90% );font-weight: 400;", "floating": "right", { "statut": "Permanent formation", "nom": "Béatrice Rivière", "fonction": "AI, CNRS", "link":"people/personnel-list/technical-research-support-personnel/beatrice-riviere" }, }, "": { /* Catégorie spéciale */ "color": "red", "style": "background-image: radial-gradient( circle farthest-corner at 10% 20%, rgba(253,101,133,1) 0%, rgba(255,211,165,1) 90% );font-weight:400;", "floating": "right", { "statut": "Prevention assistant", "nom": "Lyvia Lescure", "fonction": "TCN, SU", "link":"people/personnel-list/technical-research-support-personnel/lyvia-lescure" }, }, "":{ "children": { "": { /* Tous les chercheurs */ "color": "blue", "orientation": "grid", "style":"height:500px;background: rgb(83,206,241); background: -moz-radial-gradient(circle, rgba(83,206,241,1) 0%, rgba(148,187,233,1) 100%); background: -webkit-radial-gradient(circle, rgba(83,206,241,1) 0%, rgba(148,187,233,1) 100%); background: radial-gradient(circle, rgba(83,206,241,1) 0%, rgba(148,187,233,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#53cef1',endColorstr='#94bbe9',GradientType=1);", { "statut": "CNRS researchers", "noms": ["Lorenzo Bramanti", "François Charles", "Pierre Galand","Katell Guizien", "Stéphane Hourdez"], "fonctions": ["CR", "CR, HDR", "DR, HDR", "DR, HDR", "CR, HDR"], "links":["people/personnel-list/researchers/lorenzo-bramanti", "people/personnel-list/researchers/francois-charles", "people/personnel-list/researchers/pierre-galand", "people/personnel-list/researchers/katell-guizien", "people/personnel-list/researchers/stephane-hourdez"], }, { "statut": "Teacher-researchers Sorbonne University", "noms": ["Julia Baudart-Lenfant" , "François Lantoine", "Franck Lartaud", "Laurence Méjanelle","Audrey Pruski","Jadwiga Rzeznik-Orignac"], "fonctions": ["MC" , "MC", "MC, HDR", "MC", "MC", "MC","MC"], "links":["people/personnel-list/teacher-researchers/julia-baudart-lenfant", "people/personnel-list/teacher-researchers/francois-lantoine", "people/personnel-list/teacher-researchers/franck-lartaud", "people/personnel-list/teacher-researchers/laurence-mejanelle", "people/personnel-list/teacher-researchers/audrey-m-pruski", "people/personnel-list/teacher-researchers/jadwiga-rzenik-orignac"] }, { "statut": "Post-doctoral researchers", "noms": ["Titus Immanuel","Axelle Fleury","Elisabetta Manea","Pierre Ramond","Carlotta Ruiz-Gazulla"], "links": ["people/personnel-list/doctoral-students/titus-immanuel",
"people/personnel-list/doctoral-students/axelle-fleury",
"people/personnel-list/doctoral-students/elisabetta-manea",
"people/personnel-list/doctoral-students/pierre-ramond",
"people/personnel-list/doctoral-students/carlotta-ruiz-gazulla"] }, { "statut": "Volunteer researchers from Sorbonne University", "noms": ["Jean-Michel Amouroux"], "links": ["people/personnel-list/researchers/jean-michel-amouroux"] }, { "statut": "PhD students (* co-direction)", "noms": ["Eva Agranier*","Nathan Nault*","Lauryn Olla","Nolwenn Pagès", "Joëlle Robbe*","Linta Vonta","Adèle Wolinski*"], "links": ["people/personnel-list/doctoral-students/eva-agranier", "people/personnel-list/doctoral-students/nathan-nault", "people/personnel-list/doctoral-students/lauryn-olla", "people/personnel-list/doctoral-students/nolwenn-pages", "people/personnel-list/doctoral-students/joelle-robbe", "people/personnel-list/doctoral-students/linta-vonta", "people/personnel-list/doctoral-students/adele-wolinski"] }, }, "": { /* Tous les personnels de soutien */ "color": "green", "style":"height:500px;background: rgb(34,193,195); background: -moz-linear-gradient(0deg, rgba(34,193,195,1) 0%, rgba(130,190,129,1) 69%, rgba(253,187,45,1) 100%); background: -webkit-linear-gradient(0deg, rgba(34,193,195,1) 0%, rgba(130,190,129,1) 69%, rgba(253,187,45,1) 100%); background: linear-gradient(0deg, rgba(34,193,195,1) 0%, rgba(130,190,129,1) 69%, rgba(253,187,45,1) 100%); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#22c1c3',endColorstr='#fdbb2d',GradientType=1);", "orientation": "column", { "statut": "Engineers and technicians", "noms": ["Nathalie Guillory","Céline Labrune","Lyvia Lescure","Erwan Péru","Béatrice Rivière","Gilles Vétion","Thomas Boyer","Camille Calmels"], "fonctions": ["AI, CNRS","IR, CNRS","TCN, SU","IE, CNRS","AI CNRS","IE, CNRS","IE, CNRS, FTC", "SU, FTC" ], "links": ["people/personnel-list/technical-research-support-personnel/nathalie-guillory", "people/personnel-list/technical-research-support-personnel/celine-labrune", "people/personnel-list/technical-research-support-personnel/lyvia-lescure", "people/personnel-list/technical-research-support-personnel/erwan-peru", "people/personnel-list/technical-research-support-personnel/beatrice-riviere", "people/personnel-list/technical-research-support-personnel/gilles-vetion", "people/personnel-list/technical-research-support-personnel/thomas-boyer", "people/personnel-list/technical-research-support-personnel/camille-calmels"] }, } } } } } /* Grammaire du pseudo language un point . signifie n'importe quel caractere, une etoile * signifier zero ou plus, d'ou .* signifier zero ou plus caractere. Plus + signifier 1 au moins donc .+ represente un caractere ou plus. Les espaces n'ont pas de signification en dehors de guillement "". Les parentheses signifie un groupe donc ("a")+ est au minimum "a" mais peut etre "a""a" ou encore "a""a""a""a""a", | signifie ou ainsi (a|b) est soit a soit b, et donc (a|b)* est ababbbbaaaa par exemple. (){0,1} signifie le groupe aucune ou une fois.
La grammaire est donc la suivante, on remarque qu'il ne peut y avoir que un seul element racine, tout le reste peut-etre demultiplier, ici en tant que parmetres seul color et orientation sont reconnus, de meme en tant que type seul statut, nom, noms, fonction et fonctions le sont.