Fusionneur de schémas JSON
Fusionnez plusieurs schémas JSON ou une composition allOf en un seul schéma. Les règles qui ne peuvent jamais être satisfaites ensemble sont répertoriées comme conflits.
Accepte jusqu’à 100 000 caractères et de 2 à 50 schémas. Tout s’exécute dans votre navigateur. Les téléchargements comprennent le schéma fusionné au format JSON, un rapport JSON et un fichier CSV des conflits. Tableau JSON de schémas, ou un seul schéma contenant allOf. YAML est également accepté. Jusqu’à 100 000 caractères. Vérifiez les réglages avant de lancer le traitement.
Votre résultat
Fusionneur de schémas JSON
- Collez un tableau JSON de schémas, ou un seul schéma dont allOf les répertorie.
- Choisissez la version de JSON Schema ou conservez la détection automatique.
- Lancez la fusion, puis examinez les conflits et les règles conservées dans allOf.
- Téléchargez le schéma fusionné et le rapport de conflits.
À savoir
Accepte jusqu’à 100 000 caractères et de 2 à 50 schémas. Tout s’exécute dans votre navigateur. Les téléchargements comprennent le schéma fusionné au format JSON, un rapport JSON et un fichier CSV des conflits.
Combinaison des règles
Les types sont intersectés, tout comme les énumérations et les valeurs const; les limites minimum et maximum retiennent la valeur la plus stricte; les listes required sont réunies; et les propriétés sont fusionnées une par une. Lorsqu’un schéma interdit les propriétés supplémentaires, une propriété définie uniquement dans un autre schéma est également interdite; un conflit est signalé si cette propriété est obligatoire.
Éléments conservés dans allOf
Certains mots-clés ne peuvent pas être combinés exactement, notamment deux expressions régulières différentes, oneOf, not, if et then, patternProperties associés à d’autres règles de propriété, et les propriétés non évaluées. Ils sont conservés dans un allOf du schéma fusionné et répertoriés dans le rapport afin que le sens du schéma ne change pas.
Vérifier le résultat
Les conflits indiquent l’emplacement dans le schéma. Un conflit dans une propriété facultative ou une règle réservée aux nombres ne rend pas, à lui seul, le schéma entier impossible. Le rapport indique provenUnsatisfiable uniquement lorsqu’une preuve structurelle bornée établit qu’aucune instance ne peut satisfaire le schéma fusionné. Sinon, cet indicateur ne constitue pas une preuve de satisfaisabilité. En l’absence de conflits, les vérifications facultatives d’exemples valident avec Ajv des candidats de chaque composition par rapport à l’autre. Chaque schéma d’entrée conserve sa propre racine de références locales. Les exemples sont des éléments probants, pas une preuve d’équivalence exhaustive. Le validateur rejette les schémas qui utilisent __proto__ comme clé de propriété, de motif ou de dépendance.