Configurations JSON
Les trames ou fichiers JSON de description de données suivent la syntaxe générale suivante :
{ "header": { "id": "<uuid>", "comment": "<comment>", "spec": "<spec_id>", "version": <version_number>, "created_date": "<date_of_creation>", "modified_date": "<last_modification_date>", "created_author": "<create_author_email>", "modified_author": "<last_author_email>", "tags": ["<tag>", ...], "metadata": { "<key>": "<value>", ... } }, "data": ... }
L’entête regroupe les informations servant à qualifier les données :
<uuid>
: identifiant unique de la ressource, par exemple :"4a5996c8-db92-4e5f-98b5-632a527a0956"
<comment>
(optionnel) : commentaire utilisé à des fins de documentation uniquement<spec_id>
: identifiant de la spécification utilisée par la ressource, par exemple :"SKOP_CAPTURE_GUIDE#1.0"
<version_number>
: numéro de version de la ressource, incrémenté à partir de 1<date_of_creation>
: date de création de la ressource, au format ISO 8601, par exemple :"2021-12-13T15:16:00Z"
<last_modification_date>
: date de dernière modification de la ressource<create_author_email>
: courriel de l'auteur ayant créé la ressource<last_author_email>
: courriel de l'auteur ayant effectué la modification la plus récente<tag>
(optionnel) : une ou plusieurs étiquettes pour repérer ou catégoriser le contenumetadata
/"<key>": "<value>"
: une ou plusieurs métadonnée associée aux donnés, sous la forme de paires clés / valeurs (chaînes uniquement). Les métadonnées doivent permettre le filtrage et l’indexation des données si nécessaire.
Le bloc de données contient les données associées à la ressource. Outre les primitives JSON, les données peuvent contenir :
- un message internationalisé, sous la forme d’un objet prenant comme clés les codes langues et comme valeur le message traduit, par exemple :
{ "fr": "Objet", "en": "Object" }
Ce type de donnée est identifié comme <i18n>
dans la suite du document.
- une définition d’icône, sous la forme d’un objet prenant comme clé les plate-formes android ou ios, et comme valeur une description possédant les clés family (police à utiliser) et glyph (code point du caractère), par exemple :
"icon": { "android": { "family": "MaterialIcons", "glyph": 58098 } }
Ce type de donnée est identifié comme <icon>
dans la suite du document.