Update CONCEPT.md

This commit is contained in:
Christian P. MOMON 2020-09-17 04:30:49 +02:00
parent 9ee525ffe7
commit 0850ab8da2

View file

@ -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 pour décrire la fédération ;
- 1 fichier web public par organisation membre de 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. 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 ## 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 : Exemple :
@ -30,7 +30,7 @@ Exemple :
organization.name=Chapril organization.name=Chapril
organization.description=Chapril est le chaton de l\'April. organization.description=Chapril est le chaton de l\'April.
organization.website=https://www.chapril.org/ organization.website=https://www.chapril.org/
organization.logo.url= organization.logo=
organization.owner.name=April organization.owner.name=April
organization.owner.website=https://www.april.org/ organization.owner.website=https://www.april.org/
organization.owner.logo= organization.owner.logo=
@ -41,7 +41,45 @@ organization.legal.url=
organization.technical.url= organization.technical.url=
organization.startDate= organization.startDate=
organization.endDate= 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 `<br/>` 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.