- Impression
- SombreClair
- PDF
Bases de la notation JSON
Objet de l'article
La notation JSON (Javascript Object Notation) est utilisée principalement dans les technologies web pour :
- la création de fichiers de configuration (p.ex. pour configurer les workflows dans l'application Cooperlink)
- le stockage de données (p.ex. dans les bases de données dites documents ou noSQL)
- le transfert de données (p.ex. structure de données échangées dans le cadre d'une API de type REST)
- ou l'exploitation de données dans une base de données
Cet article explique les bases de la notation.
Javascript Objet Notation (JSON)
Comme son nom l'indique, JSON est une notation et non un langage. Cela signifie qu'il n'existe aucune instruction qui puisse être interprétée par un ordinateur ou un logiciel. Le JSON permet de créer des structures de données au même titre que le XML (l'HTML étant par contre lui un language qui est interprété par les navigateurs web).
Structure
La structure de base d'un fichier JSON est comme suit :
{
"cleNumerique": valeurNumerique,
"cleTexte": "valeurTexte",
"cleBooleen": true,
"cleImbrique":
{
"cleSousPropriete": valeur
},
"cleTableauSimple": [1, 2, 3],
"cleTableauComplexe": [
{
"cleSousPropriete1": valeur
},
{
"cleSousPropriete1": valeur
}
]
}
Les informations contenues entre des accolades { } (curcly-braces) constituent des objets, c'est-à-dire des collections ou structures d'éléments de données hétéroclites. Les données sont appelées propriétés et peuvent être de type :
- simples avec une syntaxe de type paire clé-valeur : "clé": valeur
- ou complexes (c'est-à-dire des combinaisons de collections simples).
Les propriétés sont séparées par une virgule (comma) sauf lorsqu'elles terminent une collection.
Les clés de propriétés sont libres. Mais elles sont interprétrée par le logiciel qui les utilise. Un protocole doit donc être défini pour établir un code JSON interprétable.
Les valeurs de propriétés peuvent être de différents types : numérique, texte (dans ce cas on utilisé des guillemets ""), booléen, ...
Les propriétés peuvent être imbriquées (nested), c'est-à-dire qu'elles peuvent contenir elles-même une collection de propriétés délimitée par des accolades { }.
Les informations contenues entre des crochets [ ] constituent des tableaux de valeurs (array). Un tableau est une collection d'éléments de données similaires stockés à des emplacements de mémoire contigus, soit des propriétés soit des objets.
Médias
La notation JSON peut être exploitée à travers différents médias :
- Dans un fichier texte auxquel on attribue généralement l'extension .json (p.ex. config.json)
- Dans un appel REST API (p.ex. https://demo-api.cooperlink.io/tasks - Nécessite une authentification préalable sur https://demo.cooperlink.io)
- Dans une base de données
Outils
Il existe différents outils gratuits permettant de manipuler des données JSON avec des aides visuelles (colorisation des propriétés notamment) et vérification de la syntaxe.
- En ligne
- Desktop
- Notepad++