Titre | JavaScript Object Notation |
Catégorie | Données structurées |
Abréviation | JSON |
Extension de fichier | .json |
Mime Type |
application/json (Legacy: text/json, text/javascript) |
Pronom PUID | x-fmt/817 |
Version | JSON est spécifié dans l’ECMA-404. Il existe une spécification IETF RFC du format de fichier JSON et elle est généralement référencée : RCF8259 [2]. Pour GeoJSON : RFC 7946 [3] |
JSON est un format purement textuel. Grâce à son fort ancrage dans les applications web, JSON est largement diffusé. JSON a été créé pour pouvoir transmettre et traiter des données structurées le plus rapidement possible sur le web (serveur - client). Les sous-types de JSON sont entre autres GeoJSON et TopoJSON pour l'échange de données géographiques (p. ex. points de coordonnées). Une description détaillée du format est disponible dans [4] [5].
Ouverture du format: 4 Licence libre: 4 Diffusion: 4 Fonctionnalités: 2 En outre, la distinction entre les attributs et les éléments disparaît lorsque le XML est converti en JSON. La mise en page du XML et du CSV est également perdue lors de la migration. Toutefois, les différences de mise en page ne jouent qu'un rôle mineur dans les fonctionnalités de ces formats. Il est possible de convertir JSON en XML et, dans une moindre mesure, en CSV. Toutefois, dans le cas de JSON imbriqués (nested), plusieurs CSV sont nécessaires pour représenter le contenu. Implémentation: 4 Densité de mémorisation: 4 Vérifiabilité: 3 Bonnes pratiques: 2 Perspectives: 3 Classe de formats: B |
Pour le stockage de grandes quantités de données, XML est préférable à JSON. XML offre la possibilité de séparer structurellement les données et les métadonnées sous forme d'éléments et d'attributs. XML autorise également les commentaires sur les contenus. Avec JSON, il n'est pas clair dès le départ, quels éléments représentent la valeur et lesquels représentent les métadonnées.
Tableau 1 : description de données dans XML (avec attributs et commentaires) et JSON.
Grâce aux tableaux, les types de données primitifs peuvent être empaquetés plus efficacement dans les fichiers JSON que dans les fichiers XML. En raison de l'origine du format en JavaScript, les données JSON peuvent en outre être traitées plus rapidement par les applications web et la plupart des langages de programmation.
Tableau 2 : conversion d'un tableau dans XML (à l'aide d'attributs) et JSON
Les principales différences entre JSON et XML sont les suivantes :
JSON | XML |
Uniquement Unicode | Différents encodages (p. ex. ISO-8859-1) |
Prend en charge attributs et commentaires | |
Types de données primitifs : nombres, caractères, booléens, null | Également types de données complexes comme date |
Données en carte et en tableaux | Données en arbre |
Tableau 3 : comparaison entre JSON et XML
JSON permet également de stocker et de transférer indirectement des fichiers binaires (image, audio, vidéo, etc.). Pour ce faire, les données binaires doivent être encodées, par exemple en Base64, et consignées dans le fichier JSON sous forme de chaîne de caractères Unicode. L'encodage (p. ex. Base 64) doit également être consigné dans JSON afin de pouvoir créer ultérieurement des fichiers binaires à partir des données. Comme il existe de meilleures méthodes pour transférer des fichiers binaires, il n'est pas recommandé d'utiliser JSON.
JSON est un format développé pour échanger efficacement des données sur internet. JSON est limité en ce qui concerne l’archivage par rapport à XML, car aucun attribut ne peut être attribué aux éléments de données. De plus, JSON n'autorise pas les commentaires. JSON ne prend pas en charge les types de données complexes. Convertir ou exporter du XML ou des bases de données en JSON n'a donc pas de sens. Un fichier JSON peut toutefois être archivé sans conversion, car il reste lisible à long terme en tant que pur format texte ou format de texte brut.
Standard ECMA-404 : The JSON Data Interchange Syntax, 2nd edition, December 2017 (ecma-international.org)
https://www.ecma-international.org/wp-content/uploads/ECMA-404_2nd_edition_december_2017.pdf
RCF 8259 - The JavaScript Object Notation (JSON) Data Interchange Format (ietf.org)
https://datatracker.ietf.org/doc/html/rfc8259
[1] ECMA International, „The JSON Data Interchange Syntax,“ Genève.
[2] Internet Engineering Task Force (IETF), „The JavaScript Object Notation (JSON) Data Interchange Format,“
[3] Internet Engineering Task Force (IETF), „The GeoJSON Format,“ en ligne, 2016.
[4] Library of Congress, „JSON (JavaScript Object Notation),“
[5] Wikipedia, „JSON,“ Wikipedia, 17 9 2023
https://en.wikipedia.org/wiki/JSON
Catalogue des formats de fichiers pour l'archivage | version 7.0, juin 2024 |