YAML naar JSON-conversie zet gegevens geschreven in YAML (YAML Ain't Markup Language) om naar JSON (JavaScript Object Notation). Beide formaten stellen gestructureerde data voor als sleutel-waardeparen, reeksen en geneste objecten, maar ze verschillen in syntaxis. YAML gebruikt inspringing en minimale interpunctie; JSON gebruikt accolades, vierkante haakjes en verplichte aanhalingstekens. Omzetten tussen beide is een veelvoorkomende taak bij het overzetten van configuratiegegevens tussen systemen die verschillende formaten verwachten.
YAML is ontworpen voor leesbaarheid door mensen. Het ondersteunt commentaar, meerregelige strings, ankers en aliassen — functies die JSON niet kent. Wanneer je YAML naar JSON converteert, worden deze YAML-specifieke kenmerken opgelost: ankers worden inline uitgevouwen, commentaar wordt verwijderd en meerregelige blokken worden escaped strings. De uitvoer is geldige JSON die elke JSON-parser kan lezen.
De YAML 1.2-specificatie definieert JSON expliciet als een subset van YAML, wat betekent dat elk geldig JSON-document ook geldig YAML is. Het omgekeerde geldt niet. YAML-documenten met commentaar, ankers of complexe sleutels hebben geen directe JSON-equivalent en moeten worden vereenvoudigd tijdens de conversie. Dit tool verwerkt die conversie automatisch en produceert nette, goed opgemaakte JSON van elke geldige YAML-invoer.
Waarom een online YAML naar JSON-converter gebruiken?
YAML handmatig naar JSON converteren is foutgevoelig, vooral bij diep geneste structuren of meerregelige waarden. Een browsergebaseerde converter geeft je het resultaat direct en vangt YAML-syntaxfouten op voordat ze je applicatie bereiken.
⚡
Direct converteren in je browser
Plak je YAML en ontvang opgemaakte JSON-uitvoer in milliseconden. Geen CLI-tools te installeren, geen bouwstap, geen afhankelijkheden te beheren.
🔀
Verwerkt elke geldige YAML-structuur
Ondersteunt geneste mappings, reeksen, meerregelige strings (letterlijke en gevouwen blokken), ankers, aliassen, samenvoegsleutels en alle YAML 1.2-scalaire typen.
🔒
Houd je gegevens privé
Alle verwerking verloopt lokaal in je browser via JavaScript. Je YAML-inhoud wordt nooit naar een server verzonden, wat het veilig maakt voor configuratiebestanden met inloggegevens of interne paden.
📋
Kopieer of pas het uitvoerformaat aan
Schakel tussen 2-spatie en 4-spatie inspringing. Kopieer het JSON-resultaat met één klik naar je klembord voor direct gebruik in code, API-verzoeken of configuratiebestanden.
Toepassingen van YAML naar JSON
Frontend-ontwikkeling
Converteer YAML-configuratiebestanden van een ontwerpsysteem of CMS naar JSON voor gebruik door JavaScript-bundlers, REST API's of i18n-bibliotheken die JSON-invoer vereisen.
Backend-engineering
Zet Spring Boot application.yml of Rails database.yml om naar JSON voor deployment-scripts, API-gateways of services die alleen JSON-configuratie accepteren.
DevOps en CI/CD
Converteer docker-compose.yml, GitHub Actions-workflows of Kubernetes-manifesten naar JSON voor validatietools, beleidsengines zoals OPA, of foutopsporing met jq.
QA en testen
Zet YAML-testfixtures om naar JSON-payloads voor API-testtools zoals Postman, Insomnia of geautomatiseerde testsuites die JSON-verzoekteksten verwachten.
Data-engineering
Converteer YAML-pijplijndefinities (Airflow, dbt, Dagster) naar JSON voor schemavalidatie, programmatische bewerking of integratie met metadatacatalogi.
Leren en documentatie
Zie snel hoe YAML-structuren zich verhouden tot hun JSON-equivalenten bij het bestuderen van configuratieformaten of het schrijven van documentatie.
Referentietabel: YAML naar JSON-typeomzetting
Elk YAML-gegevenstype wordt tijdens de conversie omgezet naar een specifiek JSON-type. De tabel hieronder toont elk YAML-construct naast de bijbehorende JSON-uitvoer. Door deze omzettingen te begrijpen, kun je voorspellen hoe je YAML-gegevens eruitzien na conversie en verrassingen met typen zoals booleans of null-waarden vermijden.
YAML-type
YAML-syntaxis
JSON-uitvoer
Mapping
name: Alice
{ "name": "Alice" }
Sequence
- apple\n- banana
["apple", "banana"]
String
greeting: hello world
"hello world"
Integer
count: 42
42
Float
ratio: 3.14
3.14
Boolean
active: true
true
Null
value: null
null
Multiline (|)
bio: |\n Line one\n Line two
"Line one\nLine two\n"
Folded (>)
note: >\n A long\n paragraph
"A long paragraph\n"
Anchor/Alias
&default\n <<: *default
Resolved inline (no $ref)
YAML vs JSON-syntaxis
YAML en JSON vertegenwoordigen hetzelfde datamodel maar met verschillende syntaxisregels. De onderstaande verschillen verklaren waarom sommige YAML-functies — zoals commentaar en ankers — geen JSON-equivalent hebben.
YAML
Gebruikt inspringing voor nesting (geen accolades). Ondersteunt commentaar met #. Strings hebben meestal geen aanhalingstekens nodig. Staat meerregelige waarden toe met | (letterlijk) en > (gevouwen) blokscalaires. Ondersteunt ankers (&naam) en aliassen (*naam) voor hergebruik. In YAML 1.2 worden alleen true en false herkend als booleaanse waarden; oudere YAML 1.1-parsers accepteerden ook yes, no, on en off, maar deze worden in YAML 1.2 behandeld als gewone strings.
JSON
Gebruikt accolades en vierkante haakjes voor nesting. Geen commentaarsyntaxis. Alle strings moeten dubbel worden geciteerd. Geen meerregelige stringliterals — gebruik in plaats daarvan \n-escapereeksen. Geen anker- of aliasmechanisme. Booleaanse waarden zijn strikt kleine letters true en false. Alle sleutels moeten geciteerde strings zijn. Afsluitende komma's zijn ongeldig.
Codevoorbeelden
Hieronder staan werkende voorbeelden voor het programmatisch converteren van YAML naar JSON. Elk voorbeeld parseert een YAML-string en geeft opgemaakte JSON als uitvoer.
# Convert a YAML file to JSON with yq
yq -o=json config.yaml > config.json
# Pipe YAML into yq for one-off conversion
echo "name: demo" | yq -o=json
# → { "name": "demo" }
# Python one-liner (no extra install on most systems)
python3 -c "import yaml, json, sys; print(json.dumps(yaml.safe_load(sys.stdin), indent=2))" < config.yaml
Veelgestelde vragen
Is YAML een superset van JSON?
Ja, vanaf YAML 1.2 (gepubliceerd in 2009). Elk geldig JSON-document is ook geldig YAML. De YAML-specificatie werd opzettelijk bijgewerkt om volledige JSON-compatibiliteit te garanderen. Het omgekeerde geldt echter niet — YAML-functies zoals commentaar, ankers en ongenoteerde sleutels hebben geen JSON-equivalent.
Wat gebeurt er met YAML-commentaar tijdens de conversie?
Commentaar wordt verwijderd. JSON heeft geen commentaarsyntaxis, dus regels die beginnen met # in je YAML-invoer gaan verloren tijdens de conversie. Als je commentaar wilt bewaren, houd dan het originele YAML-bestand als bron der waarheid en genereer er JSON van wanneer nodig.
Hoe worden YAML-ankers en aliassen verwerkt?
Ankers (&naam) en aliassen (*naam) worden opgelost tijdens het parseren. Het alias wordt vervangen door een volledige kopie van de verankerde data. De resulterende JSON bevat geen verwijzingen — alle waarden worden inline uitgevouwen. Samenvoegsleutels (<<: *naam) worden op dezelfde manier opgelost.
Kan YAML naar JSON-conversie gegevens verloren laten gaan?
Voor gegevenswaarden niet. Alle YAML-scalaire typen (strings, getallen, booleans, null) hebben directe JSON-equivalenten. Wat verloren gaat: commentaar, tagdirectieven, ankernamen en het onderscheid tussen blok- en stroomstijl. Als je YAML aangepaste tags gebruikt (!!python/object, !!timestamp), worden deze omgezet naar gewone waarden of kan er een parserfout optreden afhankelijk van de parser.
Waarom wordt mijn YAML-boolean 'yes' een string in JSON?
Dit tool gebruikt js-yaml v4, dat YAML 1.2-booleanresolutie volgt. Alleen true en false (in elke combinatie van hoofd- en kleine letters) worden herkend als booleans. Waarden zoals yes, no, on en off worden behandeld als gewone strings en verschijnen als geciteerde strings in de JSON-uitvoer. Als je onverwachte stringwaarden ziet waar je booleans verwachtte, gebruik dan true of false in je YAML-bron.
Wat is de maximale YAML-bestandsgrootte die dit tool aankan?
Het tool draait in je browser, dus de limiet hangt af van het beschikbare geheugen van je apparaat. In de praktijk worden bestanden tot enkele megabytes zonder problemen geconverteerd. Voor zeer grote bestanden (50 MB+) is een CLI-tool zoals yq of een Python-script met PyYAML betrouwbaarder, omdat zij gegevens als een stroom kunnen verwerken in plaats van alles tegelijk in het geheugen te laden.
Hoe worden meerregelige YAML-strings geconverteerd naar JSON?
YAML heeft twee meerregelige blokscalairstijlen. Letterlijke blokken (|) behouden regelafbrekingen als \n-tekens in de JSON-string. Gevouwen blokken (>) vervangen enkelvoudige regelafbrekingen door spaties, waardoor meerdere regels één alinea vormen. Beide stijlen voegen standaard een afsluitende nieuwe regel toe, die je kunt verwijderen met de afkapopdracht (|- of >-).