ΠαραγωγήJSON Schema (draft-07) από δεδομένα JSON-παράδειγμα, ή επικύρωση οποιουδήποτε εγγράφου JSON έναντι οποιουδήποτε σχήματος με συγκεκριμένα μηνύματα σφάλματος.
Επίσης: Μορφοποιητής JSON | Αξιολογητής JSONPath | Όλα τα εργαλεία JSON.
Όλη η επεξεργασία γίνεται τοπικά στο πρόγραμμα περιήγησης — τίποτα δεν μεταφορτώνεται.
Δημιουργία σχήματοςΕπικύρωση δεδομένων
Επικόλληση ενός αντικειμένου JSON παρακάτω (ή πίνακα αντικειμένων — οι ιδιότητες συγχωνεύονται και το required γίνεται ένωση). Το σχήμα συνάγεται· η επεξεργασία του μετά είναι δυνατή αν χρειάζονται αυστηρότεροι κανόνες.
Συμπερίληψη κεφαλίδας $schema — προτάσσει τη δήλωση draft-07 ώστε οι επικυρωτές να γνωρίζουν ποια διάλεκτο χρησιμοποιεί το σχήμα. Παράδειγμα: "$schema": "http://json-schema.org/draft-07/schema#"
Σήμανση κλειδιών required — προσθέτει κάθε κλειδί που βρίσκεται στο δείγμα JSON στη λίστα των υποχρεωτικών. Παράδειγμα: "required": ["name", "price", "inStock"]
Συμπύκνωση μικρών συνόλων τιμών σε enum — όταν ένας πίνακας βαθμωτών έχει 2–8 μοναδικές τιμές, ο τύπος στοιχείων του περιορίζεται σε enum. Παράδειγμα: "tags": ["sale", "new", "sale"] → "tags": {"type": "array", "items": {"type": "string", "enum": ["sale", "new"]}}
Τα σχήματα ερμηνεύονται ως draft-07. Η επικύρωση υποστηρίζει type, enum, required, properties, patternProperties, additionalProperties, items, όρια αριθμών, μήκος και μοτίβο συμβολοσειρών, πίνακες, και allOf/anyOf/oneOf/not.
Είσοδος — δείγμα JSON
Παραγόμενο σχήμα (επεξεργάσιμο)
Σχήμα (draft-07)
Δεδομένα προς επικύρωση
Αποτέλεσμα
Σημειώσεις γεννήτριας: οι ακέραιοι αριθμοί γίνονται "integer"· οι συμβολοσειρές αποκτούν format μόνο όταν είναι ενεργό το πλαίσιο μορφής;
πολλαπλά αντικείμενα JSON σε πίνακα συγχωνεύονται (τα κλειδιά ίδιου τύπου κρατούν τον πρώτο τύπο, οι μικτοί τύποι καταλήγουν σε πίνακα type;
το required είναι η ένωση όλων των δειγμάτων). Με το Επικύρωση δεδομένων, κάθε αποτυχημένος κανόνας αναφέρεται με τη διαδρομή του σε JSON-pointer (π.χ. .items[0].price), ώστε να μεταβαίνει κανείς κατευθείαν στην προβληματική τιμή.
JSON Schema — σύμβαση, όχι σύστημα τύπων
Ένα JSON Schema περιγράφει πώς πρέπει να μοιάζει ένα έγκυρο έγγραφο: ποια κλειδιά είναι υποχρεωτικά, τι τύπους έχουν οι τιμές, εύρη και μοτίβα. Η επικύρωση ελέγχει τα δεδομένα έναντι αυτής της σύμβασης· δεν μετασχηματίζει τίποτα. Τα σχήματα έχουν εκδόσεις ανά προσχέδιο — αυτή η σελίδα παράγει draft-07, τη πιο ευρέως υποστηριζόμενη διάλεκτο· το 2020-12 είναι το τρέχον.
Ένα παραγόμενο σχήμα είναι εικασία από δείγματα — σφίξιμο των required, enum και format με το χέρι.
🔷 Εργαλεία JSON
Παραγωγή σχημάτων JSON από δείγματα και επικύρωση δεδομένων JSON έναντι σχημάτων draft-07.