Um schema so e util se voce pode realmente verificar um documento contra ele e obter uma resposta clara sobre o que falhou e onde. Este validador cobre o subconjunto de JSON Schema que o gerador deste site escreve, entao um schema produzido la e garantido de poder ser aplicado nesta pagina.
Usar o validador de JSON Schema
Cole um schema a esquerda e o documento a verificar a direita, depois pressione Validar. Carregar a amostra preenche ambos os paineis de uma vez, entao voce pode editar apenas o documento e ver imediatamente o que o schema rejeita.
Dado o schema
{
"type": "object",
"properties": {
"age": {"type": "integer", "minimum": 0},
"name": {"type": "string", "minLength": 2}
},
"required": ["age", "name"]
}
e o documento {"age": -5, "name": "A"}, a validacao reporta dois
problemas em uma passagem: minimum falhou em /age porque -5 esta
abaixo de 0, e minLength falhou em /name porque `“A” tem um
unico caractere. Cada problema e reportado, nao apenas o primeiro, e
cada um carrega a palavra-chave exata que o rejeitou e um JSON Pointer
para o valor, entao um problema e um caminho que voce pode percorrer em
vez de uma frase que voce precisa decodificar.
O que e suportado
Type, enum e const; as palavras-chave properties, patternProperties,
additionalProperties e required; comprimento, padrao e formato em strings;
limites e multiplos em numeros; items e uniqueItems em arrays; os
combinadores allOf, anyOf, oneOf e not; if-then-else; e referencias locais
via $defs ou definitions. Uma palavra-chave que este validador nao
implementa e tratada como uma anotacao e ignorada, que e exatamente o que
a especificacao de JSON Schema permite que um validador faca com uma
palavra-chave nao reconhecida.
O que para toda a verificacao
Um $ref que nao nomeia nada dentro do schema, ou um que aponta completamente
para fora, para a validacao completamente e indica isso. Reportar um resultado
de sucesso ou falha para um schema que nao pode ser totalmente resolvido seria
uma mentira disfarçada de resposta, entao a ferramenta se recusa a dar uma.
Trocar lados
Como os paineis de schema e documento sao visualmente semelhantes, Trocar lados move o schema atual para o documento e vice-versa, util se voce os colou nas caixas erradas ou quer verificar rapidamente um schema para sanidade basica contra ele mesmo.