JSON Schema validieren

Validate JSON against a JSON Schema (type / properties / required / items / enum / numeric & length limits / additionalProperties).

JSON input
Datei hierher ziehen
oder unten auf die Schaltfläche klicken, um eine lokale Datei zu wählen
.json / .txt / .csv, bis 10 MB, wird nur im Browser verarbeitet
JSON Schema
Datei hierher ziehen
oder unten auf die Schaltfläche klicken, um eine lokale Datei zu wählen
.json / .txt / .csv, bis 10 MB, wird nur im Browser verarbeitet
Result
Das Validierungsergebnis erscheint hier
Unterstützte Keywords: type / properties / required / additionalProperties / items / minItems / maxItems / minimum / maximum / minLength / maxLength / pattern / enum / const / anyOf / oneOf / allOf / not
Nicht unterstützt: $ref / $defs / definitions und Remote-Referenzen, if / then / else, dependencies / dependentRequired, Tupel-Form von items (Array), format, exclusiveMinimum / exclusiveMaximum, multipleOf, patternProperties, propertyNames, minProperties / maxProperties, uniqueItems, contains. Nicht unterstützte Keywords werden stillschweigend ignoriert – sie erzeugen keinen Fehler und haben keine Wirkung (dieses Tool implementiert eine gängige Teilmenge von Draft-07).
Die gesamte Verarbeitung erfolgt in Ihrem Browser; Daten werden nicht an einen Server gesendet.

JSON-Daten anhand von Schema-Regeln validieren

Was ist JSON-Schema-Validierung?

Bei der JSON-Schema-Validierung werden JSON-Daten mit einem Schema abgeglichen, das Struktur und Einschränkungen vorgibt. So kann beispielsweise festgelegt werden, dass ein Feld vorhanden sein muss, einen bestimmten Datentyp besitzen soll, Array-Elemente einer bestimmten Struktur entsprechen müssen oder Zahlen und Strings bestimmte Grenzen einhalten.

Was sind JSON und Schema?

Links werden die zu prüfenden JSON-Daten eingegeben, rechts das JSON Schema. JSON enthält die tatsächlichen Daten, während das Schema die Regeln beschreibt. Das Tool validiert die JSON-Daten anhand der bereitgestellten Schema-Regeln.

Welche Schema-Regeln sind üblich?

Zu den häufig verwendeten Regeln gehören type für Datentypen, required für Pflichtfelder, properties zur Beschreibung von Objektfeldern, items für Array-Elemente sowie enum, const, minimum, maximum, minLength und maxLength für Wertbeschränkungen. Der tatsächlich unterstützte Umfang richtet sich nach der Implementierung des Validators auf der Seite.

Wie liest man das Validierungsergebnis?

Eine erfolgreiche Validierung bedeutet, dass die aktuellen JSON-Daten den bereitgestellten Schema-Regeln entsprechen. Bei einer fehlgeschlagenen Validierung zeigt der Ergebnisbereich die betroffenen Positionen und Gründe an. So lassen sich fehlende Felder, falsche Datentypen oder Werte außerhalb definierter Einschränkungen schnell lokalisieren. Prüfe zunächst den Pfad und anschließend die zugehörige Schema-Regel.

Wie verwendet man required?

required legt fest, welche Eigenschaften eines Objekts vorhanden sein müssen. Wenn ein Schema beispielsweise required: ["name"] enthält, muss das JSON-Objekt eine Eigenschaft name besitzen. Dabei prüft required nur die Existenz des Feldes und legt nicht dessen Datentyp fest. Der Datentyp sollte separat über properties und beispielsweise type definiert werden.

Was sind properties und additionalProperties?

properties beschreibt konkrete Felder eines Objekts. Beispielsweise kann name als String und age als Zahl definiert werden. Mit additionalProperties lässt sich festlegen, ob zusätzliche Eigenschaften erlaubt sind, die im Schema nicht definiert wurden. Wenn unbekannte Felder verboten werden sollen, muss dies im entsprechenden Objekt-Schema ausdrücklich festgelegt werden.

Wie validiert man lokale JSON-Dateien?

Wechsle zum Datei-Upload-Tab und wähle jeweils eine lokale Datei für die JSON-Daten und das Schema aus. Die Dateien werden im Browser gelesen und zur Validierung verwendet. Dies eignet sich beispielsweise für lokale Konfigurationsdateien, API-Daten oder andere JSON-Dokumente. Die maximale Dateigröße entspricht der Angabe auf der Seite.

Wie behebt man Validierungsfehler?

Wenn ein JSON-Formatfehler angezeigt wird, sollte zuerst geprüft werden, ob die Eingabe selbst gültiges JSON ist. Wenn das JSON erfolgreich geparst werden kann, aber die Schema-Validierung fehlschlägt, sollte der angegebene Fehlerpfad geprüft werden. Häufige Ursachen sind fehlende required-Eigenschaften, ein nicht passender type, eine nicht passende Struktur von Array-Elementen gemäß items, ein Wert außerhalb von enum sowie numerische oder textbezogene Werte außerhalb definierter Grenzen.

Für welche Szenarien eignet sich JSON Schema?

JSON Schema wird häufig zur Validierung von API-Daten, Prüfung von Konfigurationsdateien, Definition von Datenverträgen zwischen Frontend und Backend, Verarbeitung von Massendaten sowie in Entwicklungs- und Testumgebungen eingesetzt. Durch die Definition einer Datenstruktur und die anschließende Validierung tatsächlicher JSON-Daten können Struktur- und Feldfehler frühzeitig erkannt werden.

Wie validiert man JSON mit JSON Schema?

JSON Schema beschreibt die Struktur und Einschränkungen von JSON-Daten. Bei der Validierung werden die tatsächlichen JSON-Daten mit diesen Regeln abgeglichen und Felder, Datentypen, Arrays sowie weitere Einschränkungen geprüft.

Bei einer fehlgeschlagenen Validierung kann anhand des Fehlerpfads und der Ursache das konkrete Feld gefunden und anschließend das JSON oder Schema angepasst werden.

  • JSON-Daten anhand von JSON-Schema-Regeln validieren und Struktur sowie Feldbeschränkungen prüfen
  • Unterstützt gängige Schema-Regeln wie type, required, properties und items
  • Prüft Enumerationen, numerische Grenzen, String-Längen und weitere gängige Einschränkungen
  • Bei Fehlern werden Position und Ursache angezeigt, um das konkrete Feld schnell zu finden
  • JSON-Daten und Schema können getrennt eingegeben oder als Dateien hochgeladen werden
  • Die gesamte Verarbeitung erfolgt lokal im Browser, Eingaben werden nicht auf den Server hochgeladen
Wenn du aus JSON automatisch ein Schema erzeugen möchtest, kannst du JSON Schema generieren verwenden. Für den Vergleich zweier JSON-Dokumente eignet sich JSON-Diff.
Kommentare 0
Noch keine Kommentare. Schreibe den ersten Kommentar!
avatar
Der Kommentarinhalt darf nicht leer sein
0/255