JSON Schema-validator
Valider JSON-data mot JSON Schema-definisjoner. Få detaljerte feilrapporter med stier. All behandling skjer i nettleseren din.
JSON-dataene er gyldige mot det oppgitte schemaet!
| Sti | Feil |
|---|
Slik bruker du JSON Schema-validatoren
Skriv inn schema
Definer JSON Schema-et som beskriver den forventede strukturen.
Skriv inn data
Lim inn JSON-dataene du vil validere mot schemaet.
Valider
Klikk på Valider og se gjennom resultatene for eventuelle feil.
Hva er JSON Schema?
JSON Schema er et vokabular som lar deg annotere og validere JSON-dokumenter. Det gir en kontrakt for hvilke JSON-data en gitt applikasjon krever, og hvordan man samhandler med dem. JSON Schema brukes til validering, dokumentasjon og generering av mock-data.
Nøkkelfunksjoner
Typevalidering
Valider typer: string, number, integer, boolean, array, object, null
Begrensninger
Min/maks-lengde, område, mønster, obligatoriske felt og mer
Strukturdefinisjon
Definer nøstede objekter, arrayer og komplekse datastrukturer
Ofte stilte spørsmål
Verktøyet støtter JSON Schema Draft-07, Draft 2019-09 og Draft 2020-12 via Ajv-biblioteket. De vanligste schema-funksjonene støttes.
Ja! JSON Schema støtter dypt nøstede objekter og arrayer. Du kan definere properties og items på ethvert nøstingsnivå, med egne valideringsregler for hvert felt.
Verktøyet validerer først at schemaet ditt i seg selv er gyldig JSON Schema. Hvis schemaet har feil, rapporteres de før verktøyet forsøker å validere dataene.
type (string, number, object, array, boolean, null), properties med nestede schemaer, required som lister obligatoriske nøkler, enum for faste verdismengder, pattern for regex-begrensede strenger, og områdekontrollene minimum/maximum og minLength/maxLength. additionalProperties: false strammer inn objekter mot ekstra nøkler. Til sammen dekker de hoveddelen av API-valideringsregler.
I moderne JSON Schema er format en annotasjon som standard, ikke en automatisk assertasjon - validatorer håndhever den bare når de er konfigurert for det, noe 2020-12-spesifikasjonen gjorde eksplisitt med et separat format-assertion-vokabular. Bruk pattern eller et egendefinert nøkkelord når håndheving må garanteres, og behold format som interoperabilitets-metadata ellers.
$ref som peker på #/$defs/address refererer til et schema-fragment under $defs og validerer mot det der det brukes - dette er dedupliseringsmekanismen. Draft 2020-12 ga den eldre definitions det nye navnet $defs og formaliserte $dynamicRef for rekursive strukturer som kommentartrær. Referanser kan også peke på eksterne dokumenter, men å buntle dem lokalt er vanligere.
allOf krever at hvert delschema validerer - et snitt, brukt til å komponere et basis-schema med ekstra begrensninger. anyOf krever minst ett - en union, brukt for polymorfe payloads. oneOf krever nøyaktig ett; at to eller null delschemaer validerer feiler, noe som er strengere enn folk forventer og den vanlige årsaken til overraskende feil med overlappende schemaer.
2020-12 delte spesifikasjonen i separat forhandlingsbare vokabularer (validation, annotation, format-assertion), gav definitions det nye navnet $defs, forenklet exclusiveMinimum til et vanlig tall, og erstattet det eldre items-nøkkelordet med prefixItems pluss items. Mesteparten av verktøykjeden støtter begge; draft-07 er fortsatt mest utbredt, men 2020-12 er den gjeldende publiserte standarden.
Relaterte verktøy
Autoritative referanser
Primærkildene bak dette verktøyet — offisielle standarder og spesifikasjoner, ikke andrehånds sammendrag.
JSON Schema - 2020-12 Validation Specification
Valideringsspesifikasjonen JSON Schema 2020-12 — den nåværende publiserte standarden.
JSON Schema - Learn
Den offisielle læringsiden for JSON Schema, fra grunnleggende til $ref og $defs.
JSON Schema - Wikipedia
Hva JSON Schema validerer, og rollen dens i API-kontrakter og konfigurasjonsvalidering.