Schemas e tipos

comparar esquemas JSONA direção muda a leitura do risco

Cole as duas versões do JSON Schema ou carregue o exemplo. Defina quem produz e quem consome os dados.

comparar esquemas JSON

JSON Schema antigo

JSON Schema novo

Os dois schemas são processados neste navegador. Nenhum dado é enviado e nenhuma URL de referência é acessada.

Opções de validação

Pronto para a verificação manual.

Diferenças

Os registros guardados podem seguir o contrato antigo enquanto o leitor recebe uma atualização. Comparar esquemas JSON ajuda a enxergar as restrições alteradas além de linhas diferentes.

Se um consumidor antigo precisa receber dados novos, inverta o sentido. Comparar esquemas JSON separa um campo opcional de uma obrigação adicionada.

Por que comparar esquemas JSON?

A mesma alteração afeta consumidores diferentes em cada direção.

Defina o fluxo antes do resultado

O padrão testa dados antigos contra o Schema novo. No sentido contrário, fica visível o risco para sistemas que ainda consomem pelo contrato antigo.

Duas árvores de Schema com setas opostas; um dos fluxos tem um sinal de risco.

Deixe dúvidas explícitas

Comparar esquemas JSON mostra os caminhos de $ref e combinações que precisam de revisão humana. Não promete compatibilidade onde a análise não alcança.

Um ramo de referência destacado entre dois cartões de Schema e um marcador de revisão.

Leia a direção e depois a mudança

01

Escolha o lado que recebe

Dados antigos → Schema novo é o padrão. Inverta quando um cliente antigo precisar ler mensagens novas; a opção dupla mostra os dois resumos.

02

Confira os caminhos

Campos em required aparecem no próprio caminho; alterações de tipo apontam para /properties. O filtro mantém os itens incertos.

03

Atualize o resultado

Alterar entrada ou direção deixa o relatório desatualizado e bloqueia a exportação. Ctrl/Cmd+Enter executa novamente.

Sinais concretos para revisar versões

Obrigatoriedade e tipos

A compatibilidade de schemas depende de quem envia dados. required adicionado e type reduzido podem rejeitar valores aceitos na versão anterior.

Enum e limites

As diferenças entre JSON Schema incluem membros de enum e limites de número, tamanho e quantidade. Mudar só a ordem do enum não conta como alteração.

Relatório portátil

Mudanças incompatíveis potenciais aparecem com JSON Pointer e valores antes/depois. O JSON completo pode ser baixado para a revisão da versão.

O que precisa de revisão humana

Não é uma prova geral
Comparar esquemas JSON informa apenas sobre regras cobertas. Não garante compatibilidade de todas as instâncias nem do código que usa o contrato.
Referências não são carregadas
$ref, oneOf e condições relacionadas ficam como revisão. Nenhuma URL é acessada e ciclos locais não são expandidos.
Definição não obriga presença
Um campo novo em properties não entra em required automaticamente. Campos obrigatórios e additionalProperties mudam a interpretação.

Dúvidas sobre comparar esquemas JSON

Quais modos de diff este verificador de esquema JSON suporta?

Há um modo estrutural com três sentidos de compatibilidade; não há diff de texto ou modo de ordenar a entrada.

O modo normalizado ignora a ordem das chaves do esquema?

Sim. A ordem das chaves do objeto, de required e de enum não altera o resultado quando os valores são os mesmos.

Pode ajudar com esquemas com muitos $ref?

O caminho $ref aparece para revisão, mas o destino não é resolvido nem baixado.

Qual a diferença entre um diff de JSON e um diff de texto?

Diff de JSON compara valores estruturados; diff de texto compara caracteres. Aqui, algumas restrições do Schema também recebem risco direcional.

Meus dados são enviados? Que tamanho de arquivo é aceito?

Não. Os dados ficam no navegador; cada entrada aceita até 500 mil caracteres e as duas somadas até 1 milhão.

Tem um caso de schema para conferirmos?

Comece a comparar esquemas JSON

Coloque as duas versões lado a lado, escolha o fluxo e guarde o relatório de mudanças. Comparar esquemas JSON ajuda a preparar uma migração revisável.