Generatore e validatore JSON Schema

Generi uno JSON Schema (draft-07) a partire da dati JSON di esempio, oppure valide qualsiasi documento JSON rispetto a qualsiasi schema con messaggi di errore puntuali. Altri strumenti: Formattatore JSON | Valutatore JSONPath | Tutti gli strumenti JSON.
Tutta l'elaborazione avviene localmente nel suo browser — nulla viene caricato.
Genera schema Valida dati
Incolli sotto un oggetto JSON (oppure un array di oggetti — le proprietà vengono unite e l'unione di required viene calcolata). Lo schema viene dedotto; lo modifichi in seguito se servono regole più rigide.
Includi intestazione $schema — antepone la dichiarazione draft-07 così i validatori sanno quale dialetto usa lo schema. Esempio: "$schema": "http://json-schema.org/draft-07/schema#"
Segna le chiavi required — aggiunge alla lista required ogni chiave trovata nel JSON di esempio. Esempio: "required": ["name", "price", "inStock"]
Raggruppa i piccoli insiemi di valori in enum — quando un array di scalari ha da 2 a 8 valori unici, il suo tipo di elemento viene ristretto a un enum. Esempio: "tags": ["sale", "new", "sale"] → "tags": {"type": "array", "items": {"type": "string", "enum": ["sale", "new"]}}
Rileva i formati stringa più comuni — riconosce date ISO, date-time, UUID, email e URL e aggiunge format. Esempio: "createdAt": {"type": "string", "format": "date-time"}
Note sul generatore: i numeri interi diventano "integer"; le stringhe ottengono format solo se la casella formato è attiva; più oggetti JSON in un array vengono uniti (le chiavi dello stesso tipo mantengono il primo tipo, i tipi misti ricadono su un array type; required è l'unione di tutti i campioni). Con Valida dati, ogni regola non rispettata viene segnalata con il suo percorso JSON pointer (ad es. .items[0].price) in modo che possa andare direttamente al valore sbagliato.
JSON Schema — un contratto, non un sistema di tipi

Un JSON Schema descrive com'è fatto un documento valido: quali chiavi sono obbligatorie, quali tipi hanno i valori, quali intervalli e pattern. La validazione verifica i dati rispetto a questo contratto; non trasforma nulla. Gli schemi sono versionati per draft — questa pagina genera il draft-07, il dialetto più supportato; il 2020-12 è quello attuale.

Uno schema generato è una deduzione dai campioni — restringa a mano required, enum e format.