Guida à Schema JSON

Schema JSON

Prima di andà in JSON Schema, hè impurtante cunnosce a diffarenza trà JSON è JSON Schema.

JSON

JSON hè l'abbreviazione di JavaScript Object Notation, è hè un formatu di dati indipendente da a lingua chì l'API utilizanu per mandà dumande è risposte. JSON hè simplice per leghje è scrive per e persone è e macchine. JSON hè un furmatu basatu in testu chì ùn hè micca ligatu à a lingua (lingua indipendente).

Schema JSON

JSON Schema hè un strumentu utile per verificà a struttura di dati JSON. Per specificà a struttura di JSON, utilizate un furmatu basatu in JSON. U so scopu hè di assicurà chì i dati JSON sò accettabili. A cunvenzione per i dati JSON di a nostra applicazione pò esse definita cù schema.

Ci sò trè sezzioni principali à a specificazione di Schema JSON:

Hyper-Schema JSON:

JSON Hyper-Schema hè una lingua Schema JSON chì pò esse aduprata per etichettate documenti JSON cù hyperlinks è struzzioni per trasfurmà è cambià risorse JSON esterne via ambienti basati in testu cum'è HTTP. Cliccate ccà per sapè più nantu à JSON Hyper-Schema.

Schema Core JSON:

Hè un inseme di regule per l'etichettatura è a validazione di documenti JSON. 

Schema Core JSON:

  • Descrive u formatu di dati chì avete attualmente. 
  • Valida i dati chì ponu esse utilizati in teste automatizati. 
  • Assicurendu l'accuratezza di e dati datu da i clienti.  
  • Fornisce documentazione leggibile sia per l'omu è per e macchine. 

Validazione di schema JSON:

A validazione basata nantu à Schema JSON impone limiti à a struttura di dati di istanza. Dopu quì, ogni chjave chì ùn hà micca affirmazione nantu à u corsu, cum'è metadata descriptiva è indicazione d'usu, sò aghjuntu à una pusizione di istanza chì risponde à tutte e limitazioni dichjarate. 

U strumentu JSON Schema Validator di Newtonsoft hè un strumentu chì pudete aduprà direttamente in u vostru navigatore, gratuitamente. Pudete aduprà sta strumentu per pruvà a struttura di u vostru schema JSON. Questa pagina cuntene cuntrolli è spiegazioni per avè principiatu. In questu modu, hè faciule per vede cumu migliurà a vostra struttura JSON.

Pudemu cuntrollà u nostru Object JSON usendu u Strumentu di Validazione di Schema JSON:

JSON Validator Error Free

Avemu validazione di età (minimu = 20 è massimu = 40) cum'è mostra in a figura sopra. Ùn ci hè statu trovu errori.

Validatore JSON cù errore

Hè mostratu un errore se a validazione di l'età hè stata inserita incorrectamente.

A Creazione di Un Schema JSON

Fighjemu un esempiu di Schema JSON per vede ciò chì parlemu. Un ughjettu JSON di basa chì descrive un catalogu di prudutti hè u seguitu:

Esempiu JSON

U so Schema JSON pò esse scrittu cusì:

Risultatu Schema JSON

Un Schema JSON hè un documentu JSON, è quellu documentu DEVE esse un oggettu. E parolle chjave sò membri di l'ughjettu / attributi specificati da Schema JSON. "Parole chjave" in Schema JSON si riferiscenu à a parte "chjave" di una combinazione chjave / valore in un oggettu. A scrittura di un Schema JSON implica a mappatura di una "parola chjave" particulare à un valore in un oggettu per a maiò parte. 

Fighjemu un ochju più vicinu à e parolle chjave chì avemu usatu in u nostru esempiu: 

U schema JSON à quale u schema di a risorsa cumpleta hè scrittu da questu attributu. Stu schema hè scrittu in seguitu à u standard di drafts v4, cum'è specificatu da u "$ schema” keyword. Questu impedisce chì u vostru schema ùn cascà à a versione attuale, chì pò esse o micca cumpatibile cù più vechji.

lu "titre"È"description” e parolle chjave sò solu esplicative; ùn impone alcuna limitazione à i dati verificati. Queste duie parole chjave descrizanu u scopu di u schema: descrive un pruduttu.

lu "activité” keyword definisce a prima cundizione di cunfini di i nostri dati JSON; deve esse un Object JSON. Se ùn avemu micca stabilitu u tipu per tutti i schemi, u codice ùn funziona micca. Certi tipi cumuni sò "number" "Boolean" "integer" "null" "object" "array" "string".

 

Schema JSON hè supportatu da e seguenti librerie:

 

lingua

Library

C

WJElement

pitone

jschon

PHP

L'infurmazione nantu à u schema Json

JavaScript

ajv

Go

gojsonsschema

Kotlin

Mediia-validator

Ruby

JSONSchemer

JSON (Sintassi)

Fighjemu un breve sguardu à a sintassi fundamentale di JSON. A sintassi JSON hè un subset di sintassi JavaScript chì include i seguenti elementi:

  • Coppiu nome / valore sò usati chì rapprisentanu dati.
  • L'uggetti sò tenuti in parentesi ricci, è ogni nome hè guidatu da un ":" (colon), cù coppie di valori separati da "," (virgola).
  • I valori sò separati da "," (virgola) è i matrici sò tenuti in parentesi quadrate.
Esempiu di sintassi JSON

I seguenti dui strutture di dati sò supportati da JSON:

  • Lista urdinata di i valori: Pò esse un array, una lista, o un vettore.
  • Raccolta di coppie nome/valore: Differenti lingue di computer supportanu sta Struttura di Dati.

 

JSON (ughjettu)

Un schema JSON hè un oggettu JSON chì delinea u tipu è a struttura di un oggettu JSON differente. Una espressione d'ughjettu JavaScript pò rapprisintà un oggettu JSON in ambienti di runtime JavaScript. Alcuni esempi di oggetti di schema validi sò i seguenti:

Schema

Matches

{}

ogni valore

{ tipu: 'oggettu'}

un oggettu JavaScript

{ tipu: 'numeru'}

un numeru JavaScript

{ type: 'string'}

una stringa JavaScript

Esempiu:

Fà un novu ogettu chì hè viotu:

var JSON_Obj = {};

Creazione di l'ughjettu novu:

var JSON_Obj = ughjettu novu ()

JSON (paragone cù XML)

JSON è XML sò formati leghjibili da l'omu indipendenti da a lingua. In scenarii di u mondu reale, ponu tramindui creà, leghje è decodificà. Basatu nantu à i seguenti criterii, pudemu paragunà JSON cù XML.

Cumplicità

Perchè XML hè più cumplessu di JSON, i programatori preferanu JSON.

L'usu di Arrays

XML hè utilizatu per sprime dati strutturati; in ogni modu, XML ùn sustene micca arrays, ma JSON.

Analisi

JSON hè interpretatu cù a funzione di eval di JavaScript. eval torna l'ughjettu descrittu quandu s'utilice cù JSON.

 

esempiu:

 

JSON

XML

{

   "cumpagnia": Ferrari,

   "nome": "GTS",

   "prezzu": 404000

}

 

 

Ferrari 

 

GTS 

 

404000 

 

Vantaghji di Schema JSON

JSON hè cuncepitu per svià in una lingua leggibile da l'omu è da a macchina. Tuttavia, senza qualchì fine-tuning, ùn pò esse nè. JSON Schema hà u vantaghju di rende JSON più comprensibile sia per e macchine sia per l'omu.

Utilizà u Schema JSON elimina ancu a necessità di parechje aghjurnamenti di u cliente. Fà una lista di codici HTML cumuni è poi implementà in u latu di u cliente hè un metudu tipicu, ma imprecisu per a custruzzione di u cliente. API apps. Tuttavia, questa ùn hè micca a più grande strategia perchè i cambiamenti in u latu di u servitore puderanu causari un malfunzionamentu di certe funziunalità.

U vantaghju principali di JSON Schema hè a so cumpatibilità cù una varietà di linguaggi di prugrammazione, è ancu a precisione è a cunsistenza di validazione.

Schema JSON supporta una larga gamma di navigatori è sistemi operativi, per quessa, l'applicazioni scritte in JSON ùn piglianu micca assai sforzu per rende tutti compatibili cù u navigatore. Durante u sviluppu, i sviluppatori cunzidenu parechji navigatori, ancu se JSON hà digià e capacità.

JSON hè u modu più efficaci per sparta dati di qualsiasi dimensione, cumpresi audio, video è altri media. Questu hè duvuta à u fattu chì JSON guarda dati in arrays, chì facilita a trasmissione di dati. In u risultatu, JSON hè u megliu furmatu di fugliale per l'API in linea è u sviluppu.

Siccomu l'API diventanu più cumuni, hè logicu di assume chì a validazione è a prova di l'API diventeranu sempre più impurtanti. Hè ancu realisticu di aspittà chì JSON ùn hè micca prubabile di diventà assai più simplice cù u tempu. Questu implica chì avè un schema per i vostri dati hè solu cresce più criticu à u tempu. Perchè JSON hè u furmatu di schedariu standard per travaglià cù API, JSON Schema hè un bonu sustitutu per quelli chì travaglianu cù API.

Google è u Mitu Incognito

Google è u Mitu Incognito

Google è u mitu Incognito U 1 d'aprile 2024, Google hà accunsentutu à risolve una demanda distrughjendu miliardi di dati di dati raccolti da u modu Incognito.

Read More »