happytails.ai
Ελληνικά

Συγχωνευτής JSON Schema

Συνδυάστε πολλά σχήματα JSON Schema ή μία σύνθεση allOf σε ένα σχήμα. Κανόνες που δεν μπορούν ποτέ να ικανοποιηθούν ταυτόχρονα παρατίθενται ως συγκρούσεις.

Δέχεται έως 100.000 χαρακτήρες και από 2 έως 50 σχήματα. Όλα εκτελούνται στο πρόγραμμα περιήγησης. Διατίθενται για λήψη το συγχωνευμένο σχήμα ως JSON, αναφορά JSON και κατάλογος συγκρούσεων CSV. Πίνακας JSON με σχήματα ή ένα σχήμα με allOf. Υποστηρίζεται και YAML. Έως 100 000 χαρακτήρες. Εξετάστε τις ρυθμίσεις πριν από την εκτέλεση.

Το αποτέλεσμά σας

Αναφέρετε ένα πρόβλημα ή μοιραστείτε μια ιδέα.

Συγχωνευτής JSON Schema
  1. Επικολλήστε πίνακα JSON με σχήματα ή ένα σχήμα του οποίου το allOf τα απαριθμεί.
  2. Επιλέξτε έκδοση JSON Schema ή διατηρήστε τον αυτόματο εντοπισμό.
  3. Εκτελέστε τη συγχώνευση και εξετάστε τις συγκρούσεις και τους κανόνες που διατηρήθηκαν στο allOf.
  4. Κατεβάστε το συγχωνευμένο σχήμα και την αναφορά συγκρούσεων.

Τι να περιμένετε

Δέχεται έως 100.000 χαρακτήρες και από 2 έως 50 σχήματα. Όλα εκτελούνται στο πρόγραμμα περιήγησης. Διατίθενται για λήψη το συγχωνευμένο σχήμα ως JSON, αναφορά JSON και κατάλογος συγκρούσεων CSV.

Πώς συνδυάζονται οι κανόνες

Οι τύποι τέμνονται μεταξύ τους, τα enum και οι τιμές const επίσης, τα όρια minimum και maximum γίνονται αυστηρότερα, οι λίστες required συνενώνονται και οι ιδιότητες συγχωνεύονται μία προς μία. Όταν ένα σχήμα απαγορεύει επιπλέον ιδιότητες, απαγορεύεται και ιδιότητα που ορίζει μόνο άλλο σχήμα· αν αυτή η ιδιότητα είναι απαιτούμενη, καταγράφεται σύγκρουση.

Τι παραμένει στο allOf

Ορισμένες λέξεις-κλειδιά δεν μπορούν να συνδυαστούν ακριβώς, όπως δύο διαφορετικές κανονικές εκφράσεις, oneOf, not, if και then, patternProperties μαζί με άλλους κανόνες ιδιοτήτων και unevaluated properties. Διατηρούνται μέσα σε allOf στο συγχωνευμένο σχήμα και παρατίθενται στην αναφορά, ώστε να μην αλλάζει το νόημα του σχήματος.

Έλεγχος αποτελέσματος

Οι συγκρούσεις προσδιορίζουν τη θέση τους στο σχήμα. Μια σύγκρουση σε προαιρετική ιδιότητα ή σε κανόνα που αφορά μόνο αριθμούς δεν καθιστά από μόνη της αδύνατο ολόκληρο το σχήμα. Η αναφορά σημειώνει provenUnsatisfiable μόνο όταν μια περιορισμένη δομική απόδειξη καταλήγει ότι κανένα στιγμιότυπο δεν μπορεί να ικανοποιήσει το συγχωνευμένο σχήμα. Διαφορετικά, η ένδειξη δεν αποτελεί απόδειξη ικανοποιησιμότητας. Όταν δεν υπάρχουν συγκρούσεις, προαιρετικοί έλεγχοι δειγμάτων επικυρώνουν υποψηφίους κάθε σύνθεσης έναντι της άλλης με Ajv. Τα ξεχωριστά σχήματα εισόδου διατηρούν τις δικές τους ρίζες τοπικών αναφορών. Τα δείγματα είναι τεκμήρια, όχι εξαντλητική απόδειξη ισοδυναμίας. Ο επικυρωτής απορρίπτει σχήματα που χρησιμοποιούν το __proto__ ως κλειδί ιδιότητας, μοτίβου ή εξάρτησης.