JSON et YAML : deux vues des mêmes données
JSON et YAML sont tous deux des formats de sérialisation de données qui représentent le même modèle de données sous-jacent. YAML est un sur-ensemble de JSON (depuis YAML 1.2), ce qui signifie que tout document JSON valide est également du YAML valide.
Les deux formats servent des cas d'utilisation différents. JSON est préféré pour la communication machine à machine (API, payloads HTTP) en raison de sa simplicité. YAML est préféré pour les fichiers de configuration rédigés par des humains (manifestes Kubernetes, workflows GitHub Actions) car sa syntaxe basée sur l'indentation est plus facile à lire.
La conversion entre les deux est une nécessité quotidienne pour les développeurs : transformer un fichier de configuration YAML en JSON pour un appel API, ou recevoir une réponse JSON et la restructurer en configuration YAML.
Ce que le convertisseur gère
JSON vers YAML : Tous les types de valeur JSON sont mappés à leurs équivalents YAML — objets vers mappings, tableaux vers séquences, chaînes vers scalaires YAML. L'ordre des clés est préservé par défaut.
YAML vers JSON : Les commentaires sont supprimés. Les ancres et alias sont résolus — &ancre et *alias sont complètement expandés en ligne. Les flux YAML multi-documents sont convertis en tableau JSON.
Conversion sûre des types : Notre convertisseur suit YAML 1.2 par défaut, traitant uniquement "true" et "false" comme des booléens. Un mode de compatibilité YAML 1.1 est disponible pour les configs héritées.
Fonctionnalités YAML qui ne s'associent pas à JSON
Commentaires : Les lignes YAML commençant par # sont des commentaires. Lors de la conversion YAML vers JSON, les commentaires sont supprimés.
Ancres et alias : YAML permet de définir un nœud avec &nom-ancre et de le référencer avec *nom-ancre. Lors de la conversion en JSON, les alias sont complètement expandés en ligne.
Types binaires et timestamp : YAML prend en charge les données binaires et les types timestamp natifs. Les données binaires sont converties en chaîne base64 dans JSON.