Os comandos JSON permitem gerar e analisar os objetos de linguagem de formato JSON. Mais particularmente, o formato JSON faz que seja possível o acesso as bases 4D (dados e estrutura) utilizando um navegador web.
O suporte de objetos estruturados é uma das grandes novidades da linguagem de 4D v14, destinado a facilitar o intercâmbio de dados estruturados. Graças aos comandos do tema "JSON", 4D pode trabalhar diretamente com objetos JSON. Entretanto, 4D também pode trabalhar com objetos "nativos" (cuja estrutura se inspira em JSON), o que permite o intercâmbio com todos os tipos de linguagem. Para mais informação, consulte o capítulo Objetos (Linguagem).
"JSON ou JavaScript Object Notation é um formato de dados baseado em texto, genérico, derivado da notação dos objetos da linguagem ECMAScript." (fonte: Wikipedia). JSON é independente de qualquer outra linguagem, porém utiliza as convenções que são familiares para os programadores que utilizam C++ ou JavaScript, Perl, etc. É um formato que é particularmente adequado para o intercâmbio de dados.
Esta seção resume os princípios de notação implementados em JSON. Para uma descrição completa deste formato, consulte o seguinte site: www.json.org/index.html.
Os dados JSON se expressam em forma de pares nome/valor (ou chave/valor). Um par nome/valor contém um nome de campo (entre aspas), logo dois pontos, seguido de um valor. Por exemplo:
"Nome":"João"
Para sua informação, este exemplo equivale em JavaScript:
Nome="João"
Leve em conta que os nomes de propriedades são diacríticos e tomam em consideração as maiúsculas e minúsculas. Se escrever "Nome" ao invés de "nome", obtém um novo par nome/valor.
Por padrão, quando se convertem dados 4D desde JSON, é levada em conta a zona horária da máquina na que a conversão é levada a cabo (de conformidade com JavaScript). Por exemplo, em França (GMT+2), a conversão de 23/08/2013! da "2013-08-22T22:00:00Z" e vice versa.
Pode mudar este funcionamento e não ter em conta a zona horária, durante a implementação dos procedimentos de exportação, por exemplo, utilizando o comando SET DATABASE PARAMETER.