JSON-Schema-Generator & -Validator

Erzeugen Sie ein JSON-Schema (Draft-07) aus Beispiel-JSON-Daten oder validieren Sie ein beliebiges JSON-Dokument gegen ein beliebiges Schema mit präzisen Fehlermeldungen. Außerdem: JSON-Formatierer | JSONPath-Auswerter | Alle JSON-Werkzeuge.
Die gesamte Verarbeitung erfolgt lokal in Ihrem Browser — es wird nichts hochgeladen.
Schema erzeugen Daten validieren
Fügen Sie unten ein JSON-Objekt ein (oder ein Array aus Objekten — die Eigenschaften werden zusammengeführt und required wird vereinigt). Das Schema wird abgeleitet; bearbeiten Sie es danach, wenn Sie strengere Regeln brauchen.
Kopfzeile $schema aufnehmen — stellt die Deklaration nach Draft-07 voran, damit Validatoren wissen, welche Variante des Schemas verwendet wird. Beispiel: "$schema": "http://json-schema.org/draft-07/schema#"
required-Schlüssel markieren — fügt jeden Schlüssel aus dem Beispiel-JSON der Liste der Pflichtfelder hinzu. Beispiel: "required": ["name", "price", "inStock"]
Kleine Wertemengen zu enum zusammenfassen — hat ein Array mit einfachen Werten 2–8 eindeutige Werte, wird sein Elementtyp auf ein Enum eingeengt. Beispiel: "tags": ["sale", "new", "sale"] → "tags": {"type": "array", "items": {"type": "string", "enum": ["sale", "new"]}}
Übliche Zeichenketten-Formate erkennen — erkennt ISO-Datumsangaben, Datum-Zeit-Angaben, UUIDs, E-Mail-Adressen und URLs und ergänzt format. Beispiel: "createdAt": {"type": "string", "format": "date-time"}
Hinweise zum Generator: Ganzzahlen werden zu "integer"; Zeichenketten erhalten nur dann format, wenn das Kontrollkästchen für Formate aktiv ist; mehrere JSON-Objekte in einem Array werden zusammengeführt (Schlüssel gleichen Typs behalten den ersten Typ, gemischte Typen weichen auf ein type-Array aus; required ist die Vereinigung aller Beispiele). Mit Daten validieren wird jede fehlschlagende Regel mit ihrem JSON-Pointer-Pfad gemeldet (z. B. .items[0].price), damit Sie direkt zum fehlerhaften Wert springen können.
JSON-Schema — ein Vertrag, kein Typsystem

Ein JSON-Schema beschreibt, wie ein gültiges Dokument aussehen muss: welche Schlüssel Pflicht sind, welche Typen die Werte haben, Bereiche und Muster. Die Validierung prüft Daten gegen diesen Vertrag; sie formt nichts um. Schemas sind nach Entwurf versioniert — diese Seite erzeugt Draft-07, die am weitesten unterstützte Variante; aktuell ist 2020-12.

Ein erzeugtes Schema ist eine Vermutung aus Beispielen — ziehen Sie required, enum und format von Hand nach.