Taal kiezen

JSON naar YAML converter

Zet JSON om naar YAML met nette inspringing, geneste objecten, arrays en meerregelige tekst voor configuraties en API-gegevens.

Mehmet Demiray Gepubliceerd Bijgewerkt
Delen
Aantal spaties per nestniveau
Lange regels laten doorlopen in plaats van op één regel houden
Gebruik enkele aanhalingstekens voor strings waar mogelijk
Blokstijl gebruikt inspringing; flowstijl gebruikt inline haakjes

Wat doet JSON naar YAML?

JSON naar YAML zet gegevens in JSON-notatie om naar een YAML-structuur die prettiger leest in configuratiebestanden. JSON gebruikt accolades, blokhaken, dubbele aanhalingstekens en komma’s. YAML werkt vooral met inspringing, dubbele punten en lijsten met streepjes. Daardoor is YAML vaak overzichtelijker wanneer mensen het bestand regelmatig moeten lezen of aanpassen.

Een eenvoudig JSON-fragment zoals { "stad": "Utrecht", "actief": true } wordt in YAML bijvoorbeeld stad: Utrecht en actief: true op aparte regels. De inhoud blijft hetzelfde, maar de schrijfwijze verandert. Dat is precies waar JSON naar YAML voor bedoeld is: niet om data inhoudelijk te bewerken, maar om dezelfde structuur in een ander gegevensformaat te tonen.

Voor Nederlandse ontwikkelteams is dit handig bij configuratie voor Kubernetes, Docker Compose, GitHub Actions en CI/CD-pipelines. Een API kan bijvoorbeeld JSON teruggeven met instellingen voor een bezorgservice, terwijl het deploymentproces YAML verwacht. Met JSON naar YAML voorkom je handmatig overschrijven en verklein je de kans op fouten door vergeten komma’s of verkeerd geplaatste accolades.

Gebruik bij voorkeur eerst een controle op geldige JSON. Als de invoer al rommelig is, kan JSON netjes opmaken helpen voordat je de omzetting uitvoert.

Wanneer kies je YAML in plaats van JSON?

YAML is vooral sterk wanneer configuratie door mensen wordt onderhouden. Denk aan een team dat in Amsterdam, Eindhoven of Groningen werkt aan dezelfde deploymentbestanden. Een YAML-bestand met duidelijke inspringing is vaak sneller te scannen dan een compact JSON-object met veel accolades. Daardoor zie je sneller welke service bij welke poort, omgevingsvariabele of limiet hoort.

JSON blijft zeer geschikt voor gegevensuitwisseling tussen systemen. API’s, logstromen en browserapplicaties gebruiken JSON omdat het strak gedefinieerd is en breed wordt ondersteund. YAML is losser en leesbaarder, maar daardoor ook gevoeliger voor inspringfouten. Een spatie te weinig kan betekenen dat een sleutel op het verkeerde niveau staat.

Kies JSON naar YAML wanneer de eindbestemming YAML verwacht of wanneer je data uit een JSON-bron wilt gebruiken als startpunt voor een configuratiebestand. Voorbeelden zijn een Kubernetes-manifest, een Docker Compose-configuratie of een workflowbestand voor automatische tests. In zulke situaties wil je niet elk veld handmatig overtypen.

Let wel op dat conversie geen kwaliteitscontrole van je architectuur is. Een onhandige JSON-structuur wordt na omzetting meestal een onhandige YAML-structuur. Het formaat verandert, maar de betekenis en hiërarchie blijven leidend.

Zo werkt de omzetting van JSON naar YAML

JSON naar YAML begint met het parsen van de JSON-invoer. De tool leest objecten, arrays, strings, getallen, booleans en null als datastructuren. Pas daarna wordt de structuur opnieuw uitgeschreven in YAML. Dat betekent dat de tool niet simpelweg tekens vervangt, maar de betekenis van de JSON-boom volgt.

Een object in JSON wordt een verzameling sleutels en waarden in YAML. Een array wordt meestal een lijst met regels die beginnen met een streepje. Geneste objecten krijgen extra inspringing. Zo blijft zichtbaar welke velden bij elkaar horen. Een JSON-array met vestigingen, bijvoorbeeld Rotterdam en Den Haag, wordt in YAML een lijst waarin elke vestiging eigen eigenschappen kan krijgen, zoals naam, postcode en actief.

De omzetting moet ook typen behouden. true blijft een boolean, 42 blijft een getal en null blijft een lege waarde. Strings met speciale tekens kunnen aanhalingstekens nodig hebben, zeker als ze lijken op YAML-sleutelwoorden of datums. Een waarde zoals ja kan in sommige YAML-varianten gevoelig zijn, omdat oudere parsers dit als boolean kunnen interpreteren.

Wil je later de omgekeerde richting op, dan kun je terug naar JSON gaan. Dat is nuttig wanneer een systeem uiteindelijk toch JSON-invoer eist.

Praktische toepassingen voor ontwikkelaars en data-engineers

Ontwikkelaars gebruiken JSON naar YAML vaak op het moment dat data uit een API moet landen in configuratie. Stel dat een interne API een lijst met services teruggeeft in JSON, met namen, poorten en healthchecks. Voor een deployment in Kubernetes wil je die informatie kunnen verwerken in YAML. De converter levert dan een leesbare basis die je verder kunt aanvullen met labels, resource limits en namespaces.

Data-engineers komen het formaatverschil tegen bij pipelines. Een databron beschrijft velden in JSON, terwijl een orchestrator YAML verwacht voor taken, afhankelijkheden en schema-instellingen. Door JSON naar YAML te gebruiken, kun je de structuur sneller overnemen en daarna domeinspecifieke details toevoegen, zoals batchfrequentie, opslaglocatie of retentiebeleid.

Ook bij migraties is de tool praktisch. Een team kan oude configuratie in JSON hebben, terwijl nieuwe tooling YAML als standaard gebruikt. In plaats van bestand voor bestand handmatig te herschrijven, converteer je eerst de structuur en controleer je daarna de semantiek. Dat bespaart tijd bij projecten met meerdere omgevingen, zoals ontwikkeling, acceptatie en productie.

Wanneer het doel niet YAML maar een ander configuratieformaat is, kan JSON naar TOML beter passen. Dat zie je bijvoorbeeld bij bepaalde buildtools en eenvoudige applicatieconfiguraties.

Omgaan met geneste data, strings en randgevallen

De meeste conversies zijn rechttoe rechtaan, maar randgevallen verdienen aandacht. Geneste objecten en arrays worden in YAML weergegeven met inspringing. Dat is leesbaar, maar ook streng: één verkeerd niveau kan de betekenis veranderen. Controleer daarom na conversie vooral diep geneste stukken, zoals permissies, routeconfiguratie of lijsten met omgevingsvariabelen.

Speciale tekens vragen om zorgvuldige weergave. Een string met een dubbele punt, hekje, accolade of regeleinde kan in YAML aanhalingstekens nodig hebben. Denk aan een Nederlandse adresregel zoals Straat: Oudegracht of een opmerking met #. Zonder correcte quoting kan YAML denken dat een deel van de tekst een sleutel of commentaar is.

Meerdere regels tekst, zoals een e-mailtemplate of foutmelding voor gebruikers, kunnen in YAML op verschillende manieren worden weergegeven. Een converter kan kiezen voor een blockstijl, waarbij de tekst beter leesbaar blijft, of voor expliciete newline-tekens. Beide kunnen geldig zijn, maar ze lezen anders en sommige systemen verwachten een specifieke vorm.

Conversie is meestal structureel verliesarm, zolang de JSON geldig is en de YAML-output volgens dezelfde datatypen wordt geïnterpreteerd. Toch kunnen details zoals volgorde, quotingstijl en representatie van lange strings verschillen. Test daarom de YAML altijd met de toepassing die het bestand uiteindelijk gebruikt.

Veelgestelde vragen over JSON naar YAML

Hoe converteer ik JSON naar YAML? Plak geldige JSON in JSON naar YAML en laat de tool de structuur omzetten. Controleer daarna de uitvoer, vooral als je die direct gebruikt in productieconfiguratie. Bij foutmeldingen is de invoer vaak geen geldige JSON, bijvoorbeeld door een ontbrekende komma of een onjuist aanhalingsteken.

Wat zijn de belangrijkste verschillen tussen JSON en YAML? JSON is compacter en gebruikt expliciete leestekens zoals {}, [] en komma’s. YAML gebruikt inspringing en is daardoor prettiger voor configuratie die mensen lezen. JSON is vaak de standaard voor API-verkeer, YAML voor configuratiebestanden.

Wat gebeurt er met geneste structuren? Geneste objecten blijven genest, maar worden weergegeven met extra inspringing. Arrays worden lijsten. Een lijst met Nederlandse provincies of magazijnlocaties blijft dus een lijst, alleen in YAML-notatie.

Is de conversie verliesloos? Voor gewone data meestal wel: strings, getallen, booleans, lijsten en objecten blijven behouden. Niet elk detail van de oorspronkelijke schrijfwijze blijft hetzelfde. JSON-aanhalingstekens, spaties en opmaak verdwijnen omdat YAML een eigen notatie gebruikt.

Kan ik de YAML meteen gebruiken? Vaak wel, maar valideer altijd in het doelprogramma. Kubernetes, Docker Compose en CI/CD-tools kunnen eigen regels of verplichte velden hebben die losstaan van de conversie zelf.

De vragen die we het vaakst beantwoorden.

Hoe zet ik JSON om naar YAML met JSON naar YAML?

Plak je JSON in het invoerveld van JSON naar YAML en laat de tool de structuur omzetten naar ingesprongen YAML. Kopieer daarna de uitvoer naar je configuratiebestand, documentatie of deploymentbestand. Als je JSON rommelig of lastig leesbaar is, kun je die eerst netjes formatteren.

Moet mijn JSON volledig geldig zijn voordat ik die kan omzetten?

Ja, de invoer moet geldige JSON zijn. Denk aan dubbele aanhalingstekens rond sleutels, correcte komma's en gesloten accolades of blokhaken. Ongeldige JSON kan niet betrouwbaar naar YAML worden vertaald, omdat de tool dan niet zeker weet waar objecten, lijsten of waarden beginnen en eindigen.

Wat is het praktische verschil tussen JSON en YAML?

JSON gebruikt accolades, blokhaken en komma's, terwijl YAML vooral werkt met inspringing en daardoor vaak prettiger leest in configuratiebestanden. JSON is streng en populair voor API's, YAML wordt veel gebruikt voor Docker Compose, Kubernetes, GitHub Actions en andere CI/CD configuraties. De gegevens kunnen vaak hetzelfde voorstellen, maar de schrijfwijze en leesbaarheid verschillen duidelijk.

Kan JSON naar YAML ook geneste objecten en lijsten verwerken?

Ja, geneste objecten worden omgezet naar ingesprongen YAML blokken en arrays worden weergegeven als lijsten. Dat is handig bij API responses, Kubernetes manifests en configuraties met meerdere niveaus. Let er wel op dat inspringing in YAML betekenis heeft, dus kopieer de uitvoer zonder handmatig spaties te verschuiven.

Wat gebeurt er met speciale tekens, lege waarden en meerregelige tekst?

Speciale tekens worden zo weergegeven dat de YAML geldig blijft. Lege waarden, null waarden en tekenreeksen met dubbelepunten of hekjes kunnen extra aanhalingstekens krijgen als dat nodig is. Meerregelige tekst kan in YAML anders worden weergegeven dan in JSON, maar de inhoud blijft bedoeld om hetzelfde te betekenen.

Is de omzetting van JSON naar YAML altijd verliesvrij?

Voor normale gegevens zoals objecten, lijsten, getallen, booleans en tekst is de omzetting meestal inhoudelijk verliesvrij. Verschillen kunnen ontstaan door presentatie, bijvoorbeeld aanhalingstekens, volgorde van opmaak of de manier waarop meerregelige tekst wordt genoteerd. Wil je later terug naar JSON, gebruik dan YAML naar JSON en controleer het resultaat.

Kan ik de YAML direct gebruiken voor Kubernetes, Docker Compose of GitHub Actions?

Dat kan als de oorspronkelijke JSON dezelfde structuur heeft die het doelplatform verwacht. JSON naar YAML zet het formaat om, maar controleert niet automatisch of je configuratie inhoudelijk klopt voor Kubernetes, Docker Compose of GitHub Actions. Valideer daarom altijd nog met de tooling van het platform zelf voordat je iets naar productie brengt.

Wanneer kies ik YAML in plaats van JSON of TOML?

Kies YAML als mensen het bestand vaak moeten lezen of aanpassen, bijvoorbeeld bij infrastructuur, pipelines en configuratie in repositories. JSON is meestal praktischer voor API verkeer en machinegerichte uitwisseling. Past TOML beter bij je projectconfiguratie, dan kun je ook JSON naar TOML gebruiken.