Ir para o conteúdo

JSON para Mapeamento de Tabela

Visão Geral

Os dados no Vinyl são modelados usando tabelas relacionais. A maioria das APIs REST usa JSON para se comunicar. Para processar os dados JSON no Vinyl, deve ocorrer uma transformação para mapear os dados JSON para tabelas relacionais. Esse mapeamento ocorre da seguinte forma:

  • Os objetos JSON e seus objetos filhos aninhados são nivelados em uma única tabela.
  • Matrizes JSON criam novas tabelas.

Exemplos

Objeto Simples

JSON

{
  "name": "Thomas Magnum",
  "occupation": "Private Eye"
}

Tabela Relacional

Tabela "endpoint"

nome ocupação
Tomás Magnum Detetive particular

Objeto Aninhado

JSON

{
  "name": "Thomas Magnum",
  "occupation": "Private Eye",
  "bestCar": {
    "model": "Ferrari 308 GTS",
    "year": "1978"
  }
}

Tabela Relacional

Tabela "endpoint"

nome ocupação melhor carro/modelo melhorCarro/ano
Tomás Magnum Detetive particular Ferrari 308 GTS 1978

Matrizes

JSON

{
  "name": "Thomas Magnum",
  "occupation": "Private Eye",
  "ferraris": [
    { "model": "308 GTS", "year": "1978" },
    { "model": "308 GTSi", "year": "1980" },
    { "model": "308 GTSi Quattrovalvole", "year": "1984" },
  ]
}

Tabelas Relacionais

Tabela "endpoint"

nome ocupação
Tomás Magnum Detetive particular

Tabela "endpoint/ferraris"

modelo ano
308GTS 1978
308 GTSi 1980
308 GTSi Quattrovalvole 1984