BSON
# BSON

BSON est un format d'échange de données informatiques utilisé principalement comme stockage de données et format de transfert de données par le réseau dans la base de données MongoDB. C'est un format binaire permettant de représenter des structures de données simples et des tableaux associatifs (appelées objets ou des documents dans MongoDB). Le nom BSON est basé sur le terme JSON et signifie Binary JSON.

## Spécification

La spécification du BSON est sous licence CC0. Elle est donnée dans la forme de Backus-Naur.

Le BSON est un format binaire dans lequel zéro ou plusieurs couples de clé-valeur sont stockés dans une seule entité, appelée document.

### Types terminaux

Les types terminaux sont les suivants :

* octet (8 bits) ;
* entier signé (32 et 64 bits) ;
* réel (nombre à virgule flottante sur 64 bits, norme IEEE 754-2008).

### Autres types

Parmi les autres types, on peut citer :

* la chaîne de caractères (encodée en UTF-8) ;
* les booléens (vrai et faux) ;
* la date (au temps UTC) ;
* l'expression régulière ;
* le JavaScript ;
* null ;
* le tableau ;
* le sous-document (qui permet d'imbriquer plusieurs sous-documents).

## Implémentations

Différentes bibliothèques implémentent le format BSON.

C'est le format utilisé pour le stockage des données dans MongoDB. De fait, l'ensemble des pilotes de MongoDB implémentent ce format et permettent de l'utiliser dans différents langages, comme PHP ou Java.

