>_toolkitbox

~/tools / JSON Schema Validator

JSON Schema Validator — JSON gegen ein JSON Schema prüfen

Prüfen Sie JSON-Daten gegen ein JSON Schema und sehen Sie jedes Problem mit seinem Pfad und der verletzten Regel. Deckt die wichtigsten Schlüsselwörter von Draft 2020-12 ab. Nützlich, um die strukturierte Ausgabe eines KI-Modells zu prüfen. Nichts verlässt Ihren Browser.

Folgt für die unterstützten Schlüsselwörter JSON Schema Draft 2020-12. $ref wird nur innerhalb desselben Schemas gelesen.

Alles läuft in Ihrem Browser. Schema und Daten werden nicht hochgeladen.

Ein JSON Schema beschreibt, wie gültiges JSON aussieht: Typen, Pflichteigenschaften, erlaubte Werte und Wertebereiche. Dieses Tool prüft ein JSON gegen ein Schema und listet jedes Problem mit seiner Stelle in den Daten und dem Schema-Schlüsselwort auf, das verletzt wurde. KI-APIs können die Antwort eines Modells auf ein Schema festlegen, doch die Antwort kann trotzdem inhaltlich falsche Werte enthalten, verweigert oder abgeschnitten sein, daher lohnt sich eine eigene Prüfung. Schlüsselwörter, die das Tool nicht prüft, etwa format, werden aufgeführt, sobald Ihr Schema sie verwendet. Ein bestandener Test ist also nie stillschweigend schwächer, als er aussieht.

Anwendungsfälle

  • Prüfen, ob die strukturierte Ausgabe eines KI-Modells zum vorgegebenen Schema passt
  • Ein Schema mit einigen gültigen und ungültigen Beispielen testen, bevor es in einer API zum Einsatz kommt
  • Herausfinden, welche Eigenschaft in einem großen JSON-Dokument die Regeln verletzt

Verwendung

  1. Fügen Sie links das Schema und rechts die JSON-Daten ein oder laden Sie das Beispiel.
  2. Lesen Sie das Ergebnis: ein Treffer oder eine Liste von Problemen mit dem Pfad in den Daten und der verletzten Regel.
  3. Beachten Sie den Hinweis zu nicht geprüften Schlüsselwörtern, falls er erscheint.

Was ein Schema prüft und was nicht

  • properties prüft nur die vorhandenen Eigenschaften. Eine Eigenschaft ist nur dann verpflichtend, wenn ihr Name in required steht; eine nicht aufgeführte Eigenschaft darf also fehlen.
  • additionalProperties gilt für Namen, die weder zu properties noch zu patternProperties passen. Fehlt es, sind zusätzliche Eigenschaften erlaubt.
  • integer trifft auf jede Zahl ohne Nachkommaanteil zu.
  • pattern ist ein regulärer Ausdruck nach ECMA-262 und nicht verankert: Das Muster b passt auf die Zeichenkette abc. Ergänzen Sie ^ und $, wenn die ganze Zeichenkette passen muss.
  • minLength und maxLength zählen Zeichen so, wie RFC 8259 sie definiert, ein Emoji zählt also als eines.
  • format ist standardmäßig eine Annotation, und seine Prüfung ist optional. Dieses Tool prüft es nicht und weist darauf hin, wenn ein Schema es verwendet.
  • Unbekannte Schlüsselwörter werden als Annotationen behandelt, daher wird ein falsch geschriebenes Schlüsselwort wie requierd ignoriert und lässt das Schema nicht scheitern.

Arrays: 2020-12 und frühere Drafts

DraftSchemas für die ersten ElementeSchema für den Rest
2020-12prefixItemsitems
draft-07 und früheritems als ArrayadditionalItems

Dieses Tool liest beide Formen. In 2020-12 tritt items: false an die Stelle von additionalItems: false.

Was die strukturierten Ausgaben von KI-Anbietern akzeptieren

Jeder Anbieter akzeptiert nur eine Teilmenge von JSON Schema, und die drei dokumentieren sie unterschiedlich.

AnbieterWas die Dokumentation sagt
OpenAIDie Wurzel muss ein Objekt sein. Jede Eigenschaft muss in required stehen (ein optionaler Wert wird als Typ geschrieben, der auch null erlaubt), und jedes Objekt braucht additionalProperties: false. allOf, not, dependentRequired, dependentSchemas und if/then/else werden nicht unterstützt.
AnthropicadditionalProperties muss false sein. Rekursive Schemas, minimum, maximum und multipleOf, minLength und maxLength sowie ein Array-minItems ungleich 0 oder 1 werden nicht unterstützt. Ein nicht unterstütztes Feature führt zu einem 400-Fehler.
Google GeminiNur eine Teilmenge von JSON Schema wird unterstützt. minLength, maxLength, minProperties, maxProperties, uniqueItems, contains, minContains und maxContains werden entfernt und ignoriert, statt einen Fehler auszulösen.

Ein Schema, das diesen Validator besteht, kann von der Funktion eines Anbieters trotzdem abgelehnt oder nur teilweise durchgesetzt werden. Prüfen Sie die Dokumentation des Anbieters und validieren Sie die Antwort selbst.

Die Antwort selbst validieren

  • Google sagt, die Ausgabe könne dem Schema entsprechen und trotzdem inhaltlich falsch sein, und rät, die Werte in Ihrer Anwendung zu validieren.
  • Anthropic merkt an, dass ein enum- oder const-Wert ohne Fehler zurückkommen kann, der sich nur in der Groß- und Kleinschreibung unterscheidet.
  • OpenAI sagt, eine Verweigerung folgt nicht zwingend dem Schema und eine durch das Maximum an Tokens abgeschnittene Antwort ist unvollständig.
  • Anthropic sagt, eine durch max_tokens abgeschnittene Antwort passt möglicherweise nicht zum Schema. Prüfen Sie, warum das Modell angehalten hat, bevor Sie parsen.

Quellen (geprüft am 2026-10-23): JSON Schema 2020-12: Core / JSON Schema 2020-12: Validation / JSON Schema 2020-12: Release notes / OpenAI: Structured Outputs / Anthropic: Structured outputs / Google AI for Developers: Structured output

FAQ

Welcher Version von JSON Schema folgt das Tool?

Draft 2020-12. Es liest auch die älteren Array-Formen aus draft-07, bei denen items ein Array sein kann und additionalItems den Rest abdeckt. Es akzeptiert $ref auf Definitionen im selben Schema ($defs oder definitions) und lädt keine externen Schemas.

Welche Schlüsselwörter prüft es?

type, enum, const, die Grenzen für Zahlen und Zeichenketten, pattern, die Array-Schlüsselwörter (items, prefixItems, minItems, maxItems, uniqueItems, contains), die Objekt-Schlüsselwörter (properties, patternProperties, additionalProperties, required, propertyNames, dependentRequired und weitere), allOf, anyOf, oneOf, not sowie if/then/else.

Was prüft es nicht?

format, unevaluatedProperties, unevaluatedItems, $dynamicRef und contentMediaType werden nicht geprüft. JSON Schema behandelt format standardmäßig als Annotation, die Prüfung ist optional. Verwendet Ihr Schema eines dieser Schlüsselwörter, weist das Tool darauf hin.

Warum löst ein falsch geschriebenes Schlüsselwort keinen Fehler aus?

JSON Schema behandelt unbekannte Schlüsselwörter als Annotationen, daher wird ein Tippfehler wie requierd ignoriert und das Schema besteht weiterhin. Das Tool meldet einen falschen Wert bei einem bekannten Schlüsselwort, etwa einen nicht existierenden type, kann aber nicht wissen, dass Sie ein anderes Wort meinten.

Funktioniert ein Schema, das hier besteht, auch mit den strukturierten Ausgaben eines KI-Anbieters?

Nicht unbedingt. Jeder Anbieter unterstützt nur eine Teilmenge von JSON Schema. OpenAI verlangt, dass jede Eigenschaft required ist und additionalProperties auf false steht, Anthropic unterstützt keine Längengrenzen für Zahlen oder Zeichenketten, und Gemini ignoriert mehrere Schlüsselwörter. Siehe die Hinweise zu den Anbietern unter dem Tool.

Werden meine Daten an einen Server gesendet?

Nein. Schema und Daten werden in Ihrem Browser geprüft.

Ähnliche Tools