GenerujJSON Schema (draft-07) z przykładowych danych JSON albo waliduj dowolny dokument JSON względem dowolnego schematu z precyzyjnymi komunikatami błędów. Także: Formatter JSON | Ewaluator JSONPath | Wszystkie narzędzia JSON. Całe przetwarzanie odbywa się lokalnie w przeglądarce — nic nie jest wysyłane.
Generuj schematWaliduj dane
Wklej poniżej jeden obiekt JSON (albo tablicę obiektów — właściwości są łączone, a required jest sumą). Schemat jest wnioskowany; w razie potrzeby edytuj go, aby uzyskać ostrzejsze reguły.
Nagłówek $schema — dodaje na początku deklarację draft-07, aby walidatory wiedziały, jakiego dialektu używa schemat. Przykład: "$schema": "http://json-schema.org/draft-07/schema#"
Oznaczanie kluczy required — dodaje do listy wymaganych każdy klucz znaleziony w przykładowym JSON. Przykład: "required": ["name", "price", "inStock"]
Zwijanie małych zbiorów wartości do enum — gdy tablica wartości prostych ma 2–8 unikalnych wartości, jej typ elementów zawęża się do enum. Przykład: "tags": ["sale", "new", "sale"] → "tags": {"type": "array", "items": {"type": "string", "enum": ["sale", "new"]}}
Wykrywanie popularnych formatów tekstu — rozpoznaje daty ISO, daty z czasem, UUID, e-maile i adresy URL i dodaje format. Przykład: "createdAt": {"type": "string", "format": "date-time"}
Schematy są interpretowane jako draft-07. Walidacja obsługuje type, enum, required, properties, patternProperties, additionalProperties, items, granice liczbowe, długość i wzorzec tekstu, tablice oraz allOf/anyOf/oneOf/not.
Wejście — przykładowy JSON
Wygenerowany schemat (do edycji)
Schemat (draft-07)
Dane do walidacji
Wynik
Uwagi o generatorze: liczby całkowite stają się "integer"; teksty dostają format tylko wtedy, gdy zaznaczone jest pole formatu; kilka obiektów JSON w tablicy jest łączonych (klucze tego samego typu zachowują pierwszy typ, mieszane typy wracają do tablicy type; required to suma wszystkich próbek). Przy Waliduj dane każda niespełniona reguła jest zgłaszana wraz ze ścieżką JSON-pointer (np. .items[0].price), abyś mógł od razu przejść do błędnej wartości.
JSON Schema — kontrakt, a nie system typów
JSON Schema opisuje, jak powinien wyglądać poprawny dokument: które klucze są wymagane, jakie typy mają wartości, zakresy i wzorce. Walidacja sprawdza dane względem tego kontraktu; niczego nie przekształca. Schematy są wersjonowane według draftów — ta strona generuje draft-07, najszerzej obsługiwany dialekt; aktualny jest 2020-12.
Wygenerowany schemat to zgadywanie z próbek — zaostrz ręcznie required, enum i format.
🔷 Narzędzia JSON
Generuj schematy JSON Schema z przykładów i waliduj dane JSON względem schematów draft-07.