Generare tipi da esempi JSON
Dichiarazioni TypeScript, Java 17+ o C# 10+ a partire da un valore o da un massimo di 100 campioni.
- Funziona nel browser
- Nessun caricamento
- Controlla prima di scaricare
Gli input restano in questa scheda e non vengono caricati né salvati automaticamente. I conteggi aggregati di utilizzo e le informazioni diagnostiche generali sono facoltativi e inviati solo con il consenso, senza contenuti né nomi dei file. Svuotare o chiudere elimina gli input; salva prima i risultati necessari.
Formati e limiti
Dichiarazioni TypeScript, Java 17+ o C# 10+ a partire da un valore o da un massimo di 100 campioni. Nel modello un campo assente è diverso da null. TypeScript usa campi opzionali e unioni; per Java e C# sei tu a impostare le presenze. Nessun deserializzatore viene generato. Nome del tipo radice ASCII fino a 64 caratteri, fino a 256 campi; gli array vuoti hanno tipo sconosciuto. Il nome radice evita gli identificatori riservati del linguaggio o del framework; C# rifiuta anche System. Gli alias evitano il tipo contenitore e le presenze; i nomi JSON restano negli attributi e nel modello.
Solo UTF-8. Input ≤1 MiB; XML ≤100.000 unità UTF-16; profondità ≤64; JSON ≤20.000 nodi. JSONL ≤16 MiB /100.000 record /1 MiB per valore. Output ≤32 MiB. Query:3 s; altre attività:10 s; worker annullabile. Memoria nativa XSD ≤64 MiB; non è tutto l’heap worker/DOM.
Come usarlo
- Scegli sorgente e modalità
Scegli TypeScript, Java o C#, dai un nome al tipo radice e scegli se usare un solo campione o un array di campioni. Usa record diversi e rappresentativi, così emergono i campi assenti, nulli ed eterogenei.
- Configura parametri
L’esempio caricato con due record genera interface Example: id:number e name:string sono obbligatori; nickname?:null e active?:boolean sono opzionali perché ciascuno manca in uno dei due record.
- Controlla e scarica
Scarica la dichiarazione e inferred-model.json. Prima di integrarli, controlla la differenza tra campo opzionale e null esplicito e la corrispondenza dei nomi dei campi. Lo strumento genera dichiarazioni: non convalida i dati futuri e non genera un deserializzatore.
Formati e limiti
Perché l’input viene rifiutato o il risultato è vuoto?
La modalità con array di campioni richiede da 1 a 100 valori. I nomi radice iniziano con una lettera ASCII e contengono solo lettere, cifre o underscore, fino a 64 caratteri. Un array vuoto non dà alcuna indicazione sul tipo dei suoi elementi.
Quale profilo del parser e quali limiti si applicano?
È un’inferenza basata sui campioni, non una garanzia di schema. L’output per Java 17+ e C# 10+ può richiedere flag di presenza gestiti da chi chiama il codice: leggi i commenti. Se il parser numerico rifiuta la precisione di identificativi grandi, scrivili come stringhe JSON tra virgolette.
I dati o i file a cui rimanda l’input vengono inviati a un server?
L’analisi avviene in locale, in un worker del browser. Gli URL presenti nell’input non scaricano documenti remoti. Fornisci come file locali le dipendenze di schema supportate, conserva a parte il file di origine e scarica i risultati prima di chiudere la pagina.