4

Click here to load reader

Présentation de json

Embed Size (px)

Citation preview

Page 1: Présentation de json

Présentation de JSON http://www.json.org/jsonfr.html

1 sur 4 27/03/2008 10:02

objet{}{ membres }

membreschaîne : valeur membres , chaîne : valeur

tableau[][ éléments ]

élémentsvaleur éléments , valeur

valeurchaîne nombreobjettableautruefalsenull

chaîne""" caractères "

caractèrescaractèrecaractères caractère

caractèretout-Unicode-sauf-"-ou-\-ou-contrôle\"\\\/\b\f

Présentation de JSON

JSON(JavaScript Object Notation – Notation Objet issue de JavaScript) est un format léger d'échange dedonnées. Il est facile à lire ou à écrire pour des humains. Il est aisément analysable ou générable par desmachines. Il est basé sur un sous-ensemble du langage de programmation JavaScript (JavaScriptProgramming Language, Standard ECMA-262 3rd Edition - December 1999). JSON est un format textecomplètement indépendant de tout langage, mais les conventions qu'il utilise seront familières à toutprogrammeur habitué aux langages descendant du C, comme par exemple : C lui-même, C++, C#, Java,JavaScript, Perl, Python et bien d'autres. Ces propriétés font de JSON un langage d'échange de donnéesidéal.

JSON se base sur deux structures :

Une collection de couples nom/valeur. Divers langages la réifient par un objet, un enregistrement, une structure, un dictionnaire, une table de hachage,une liste typée ou un tableau associatif.Une liste de valeurs ordonnées. La plupart deslangages la réifient par un tableau, un vecteur, une liste ou une suite.

Page 2: Présentation de json

Présentation de JSON http://www.json.org/jsonfr.html

2 sur 4 27/03/2008 10:02

\n\r\t\u quatre-chiffres-hexa

nombreentierentier fracentier expentier frac exp

entierchiffrechiffre1-9 chiffres - chiffre- chiffre1-9 chiffres

frac. chiffres

expe chiffres

chiffreschiffrechiffres chiffre

eee+e-EE+E-

Ces structures de données sont universelles. Pratiquement tous les langages de programmation modernesles proposent sous une forme ou une autre. Il est raisonnable qu'un format de données interchangeable avecdes langages de programmation se base aussi sur ces structures.

En JSON, elles prennent les formes suivantes :

Un objet, qui est un ensemble de couples nom/valeur non ordonnés. Un objet commence par{ (accolade gauche) et se termine par } (accolade droite). Chaque nom est suivi de : (deux-points) et lescouples nom/valeur sont séparés par , (virgule).Un tableau est une collection de valeurs ordonnées. Un tableau commence par [ (crochet gauche) et se termine par ] (crochet droit). Les valeurs sont séparées par , (virgule).Une valeur peut être soit une chaîne de caractères entre guillemets, soit un nombre, soit true ou false ou null, soit un objet soit un tableau. Ces structures peuvent être imbriquées.Une chaîne de caractèresest une suite de zéro ou plus caractères Unicode, entre guillemets, et utilisant les échappements avecantislash. Un caratère est représenté par une chaîne d'un seul caractère.

Mis à part quelques détails d'encodage, voilà qui décrit le langage dans son intégralité.

Page 3: Présentation de json

Présentation de JSON http://www.json.org/jsonfr.html

3 sur 4 27/03/2008 10:02

JSON en ActionScript.JSON en C.

Anglais (English)Allemand (Deutsch)

Une chaîne de caractères est très proche de ses équivalents en C ou en Java. Un nombre est très proche deceux qu'on peut rencontrer en C ou en Java, sauf que les formats octal et hexadécimal ne sont pas utilisés.

De l'espace blanc est autorisé entre tous lexèmes.

[email protected]

Page 4: Présentation de json

Présentation de JSON http://www.json.org/jsonfr.html

4 sur 4 27/03/2008 10:02

JSON_checker.JSON en C++.JSON en C#.

Jayrock.JSON en Cold Fusion.JSON en Delphi.JSON en E.JSON en Erlang.JSON en Java.JSON en JavaScript.JSON en Lisp:

Common Lisp.Emacs Lisp.Chicken Scheme.MZScheme.

JSON en Lua.JSON en ML and Ruby.JSON en Objective CAML.JSON en OpenLaszlo.JSON en Perl.JSON en PHP:

JSON-PHP.PHP-JSON.PHP JSON Class.

JSON en Python.JSON en Rebol.JSON en Ruby.JSON en Squeak.

Chinois (Hànyǔ ?)Italien (Italiano)Japonais (Nihongo)

JSONRequest.Internet Draft.JSONT.JSON-RPC.JSON-RPC-Page.JSON-RPC-JAVA ORB.The Fat-free Alternative to XML.Des exemples de messages encodés en JSON.La Licence JSON.Le groupe JSON sur Yahoo!Yahoo! JSON