happytails.ai
Latviešu

JSON shēmu apvienošana

Apvienojiet vairākas JSON shēmas vai vienu allOf kompozīciju vienā shēmā. Noteikumi, kurus nekad nevar izpildīt kopā, tiek norādīti kā konflikti.

Pieņem līdz 100 000 rakstzīmēm un no 2 līdz 50 shēmām. Viss notiek pārlūkā. Var lejupielādēt apvienoto shēmu JSON formātā, JSON pārskatu un CSV konfliktu sarakstu. JSON shēmu masīvs vai viena shēma ar allOf. Der arī YAML. Līdz 100 000 rakstzīmēm. Pirms palaišanas pārskatiet iestatījumus.

Jūsu rezultāts

Ziņo par problēmu vai dalies ar ideju.

JSON shēmu apvienošana
  1. Ielīmējiet JSON shēmu masīvu vai vienu shēmu, kuras allOf tās uzskaita.
  2. Izvēlieties JSON Schema versiju vai atstājiet automātisku noteikšanu.
  3. Apvienojiet shēmas un pārskatiet konfliktus un allOf saglabātos noteikumus.
  4. Lejupielādējiet apvienoto shēmu un konfliktu pārskatu.

Kas jāzina

Pieņem līdz 100 000 rakstzīmēm un no 2 līdz 50 shēmām. Viss notiek pārlūkā. Var lejupielādēt apvienoto shēmu JSON formātā, JSON pārskatu un CSV konfliktu sarakstu.

Kā apvieno noteikumus

Tipiem, uzskaitījumiem un const vērtībām veido šķēlumu, minimuma un maksimuma robežām izvēlas stingrāko vērtību, obligāto lauku sarakstus apvieno un īpašības apvieno pa vienai. Ja viena shēma aizliedz papildu īpašības, tiek aizliegta arī īpašība, ko definē tikai cita shēma; ja šī īpašība ir obligāta, tiek norādīta pretruna.

Kas paliek allOf

Dažus atslēgvārdus nevar apvienot precīzi: divas atšķirīgas regulārās izteiksmes, oneOf, not, if un then, patternProperties kopā ar citiem rekvizītu noteikumiem un neizvērtētus rekvizītus. Tie tiek paturēti apvienotās shēmas allOf un uzskaitīti pārskatā, tāpēc shēmas nozīme nemainās.

Rezultāta pārbaude

Katram konfliktam norādīta tā vieta shēmā. Neobligāta rekvizīta vai tikai skaitļiem piemērojama noteikuma konflikts pats par sevi nenozīmē, ka visa shēma nav izpildāma. Pārskats atzīmē provenUnsatisfiable tikai tad, ja ierobežots strukturāls pierādījums nosaka, ka neviens datu eksemplārs nevar atbilst apvienotajai shēmai. Pretējā gadījumā šī atzīme nav izpildāmības pierādījums. Ja konfliktu nav, neobligātās paraugu pārbaudes ar Ajv pārbauda katras kompozīcijas kandidātus pret otru. Atsevišķas ievades shēmas saglabā savas lokālo atsauču saknes. Paraugi ir pārbaudes pierādījumi, nevis izsmeļošs ekvivalences pierādījums. Validators noraida shēmas, kurās __proto__ izmantots kā rekvizīta, parauga vai atkarības atslēga.