From 0850ab8da23e75942fce49f8d2732a0c7e0db299 Mon Sep 17 00:00:00 2001 From: "Christian P. MOMON" Date: Thu, 17 Sep 2020 04:30:49 +0200 Subject: [PATCH] Update CONCEPT.md --- CONCEPT.md | 52 +++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 45 insertions(+), 7 deletions(-) diff --git a/CONCEPT.md b/CONCEPT.md index b11fe97..4951524 100644 --- a/CONCEPT.md +++ b/CONCEPT.md @@ -6,7 +6,7 @@ StatoolInfos s'appuie sur StatoolInfos qui utilise des fichiers publics disponib - 1 fichier web public pour décrire la fédération ; - 1 fichier web public par organisation membre de la fédération ; -- 1 fichier web public par service d'organisation. +- 1 fichier web public par service des organisations. Chaque fichier web public étant acessible via un lien web, chaque fichier public peut se trouver sur un site web différent. @@ -17,11 +17,11 @@ Il suffit de récupérer tous les fichiers web publics afin de pouvoir générer ## Format des fichiers web publics -Dans StatoolInfos, ce sont des fichiers « properties », c'est à dire ne contenant que des lignes de texte au format « clé/valeur ». La clé consiste en un chemin de mots séparés par des points. Le premier mot est appelé la section. +Dans StatoolInfos, ce sont des fichiers **properties**, c'est à dire ne contenant que des lignes de texte au format `chemin=valeur`. -Donc chaque fichier web public est une liste de sections. +Un **chemin** consiste en une suite de mots séparés par des points : `organization.name=Chapril`. -Les lignes vides et les lignes commençant par un « # » sont ignorées. +Les lignes vides et les lignes commençant par un `#` sont ignorées. Exemple : @@ -30,7 +30,7 @@ Exemple : organization.name=Chapril organization.description=Chapril est le chaton de l\'April. organization.website=https://www.chapril.org/ -organization.logo.url= +organization.logo= organization.owner.name=April organization.owner.website=https://www.april.org/ organization.owner.logo= @@ -41,7 +41,45 @@ organization.legal.url= organization.technical.url= organization.startDate= organization.endDate= - ``` -La liste des chemins est normalisée dans une ontologie. +## Notion de section + +Le premier mot d'un chemin est appelé la **section**. Donc chaque fichier web public est une liste de sections. + +Suivant qu'il décrive la fédération, une organisation ou un service, le fichier web public ne contient pas les mêmes sections : + +- Fédération = file + federation + subs + metrics +- Organisation = file + organization + subs + metrics +- Service = file + service + host + software + metrics + +La liste des chemins de chaque section est normalisée dans une ontologie. + + +## Des données simples + +Dans lignes de **properties**, les valeurs doivent être le plus simple possible. + +Voici une liste de types simples : + + +| Type | Description | Modèle | Exemple | +| ------ | ------ | ------ | ------ | +| DATE | Une date au format ISO | ISO_DATE | 2020-07-06 | +| DATETIME | Une date horaire au format ISO | ISO_DATETIME | 2020-07-06T14:23:20 | +| DAYS | Une liste de 366 valeurs numériques avec séparateurs | STU | 1;2;3;4;5;…;365 | +| EMAIL | Un courriel. | ^.+@.+$ | christian@momon.org | +| MONTHS | Une liste de 12 valeurs numériques avec séparateurs | STU | 1;2;3;4;5;6;7;9;10;11;12 | +| NUMERIC | Une valeur numérique | STU | -1234.567 | +| NUMERICS | Une liste de valeurs numériques avec séparateurs | STU | 12.34;56.78;9 | +| SEPARATOR | Un caractère séparateur | `;` ou `,` | Foo;foo;;foo | +| STATUS | Un statut. | ON/MAINTENANCE/DOWN/OFF/DRAFT | ON | +| STRING | Une chaîne de caractères quelconques. Peut contenir des `
` et des `\n`. | ^.*$ | Foo is foo. | +| URL | Un lien web | ^https?://.+\..+/+$ | https://foo.foo/ | +| VALUE | Une chaîne de caractère sans séparateur | Foo | +| VALUES | Liste de valeurs de type VALUE avec séparateurs | STU | foo1;foo2;foo3 | +| WEEKS | Liste de 52 valeurs numériques avec séparateurs | STU | 1;2;3;4;5;…;51;52 | + +Note for list: +* une valeur vide ou null est autorisée ; +* si une liste de valeurs contient moins de valeurs qu'attendu alors les valeurs manquantes sont considérées comme vides ou nulles.