Difference de JSON Schema
Comparez deux JSON Schema et voyez exactement ce qui a change, chaque changement marque de rupture ou non.
Ancien schema
La coloration syntaxique est desactivee pour ce document, car recolorer un texte aussi long a chaque frappe ralentirait la saisie. Tous les outils continuent de fonctionner normalement.
Nouveau schema
La coloration syntaxique est desactivee pour ce document, car recolorer un texte aussi long a chaque frappe ralentirait la saisie. Tous les outils continuent de fonctionner normalement.
Changements
Collez deux schemas et appuyez sur Comparer.
Aucun changement ne correspond a ce filtre.
Tout fonctionne dans votre navigateur. Rien de ce que vous collez n est envoye, et vous pouvez le verifier dans l onglet Reseau de votre navigateur.
A propos de cet outil
Ceci n est pas l outil JSON Diff: celui la compare deux documents par leur valeur. Celui ci compare deux schemas par ce qu ils accepteraient, donc chaque changement dit aussi s il est de rupture, c est a dire si un document qui satisfaisait l ancien schema pourrait maintenant echouer avec le nouveau. Une propriete ajoutee au schema n est pas de rupture en elle meme, puisque les donnees existantes ne l ont simplement pas encore; une propriete retiree n est de rupture que lorsque le nouveau schema met aussi additionalProperties a false, car c est alors seulement que porter cette propriete devient un rejet. Un champ qui devient obligatoire est de rupture, puisque les donnees existantes peuvent ne pas l avoir; un champ qui n est plus obligatoire ne l est pas. Un retrecissement de type, comme passer de number a integer, est de rupture; un elargissement, comme integer vers number, ne l est pas, et c est la seule relation de sous type que cet outil connait parmi les types primitifs de JSON Schema. Une valeur d enum retiree est de rupture, puisque les donnees qui l utilisaient echouent maintenant; une valeur ajoutee ne l est pas. Une borne resserree, un maximum plus bas ou un minimum plus haut, est de rupture; une borne assouplie ne l est pas. Un changement de pattern est toujours traite comme de rupture, puisque comparer deux expressions regulieres pour savoir laquelle accepte le plus n est pas tente, et traiter un effet inconnu comme sur serait le mauvais choix par defaut. Le sous ensemble couvert est deliberement celui que le propre Generateur de Schema du site ecrit et que le Validateur de Schema applique: un additionalProperties a valeur de schema, un items en forme de tuple, les combinateurs et $ref ne sont pas parcourus.
Comment ca marche
- Collez l ancien schema dans le volet de gauche et le nouveau dans celui de droite, ou chargez l exemple.
- Appuyez sur Comparer.
- Lisez d abord les changements de rupture: la ligne de resume les compte a part, et les puces de filtre isolent seulement ces lignes.