# YAML-validator

Controleer YAML op syntaxisfouten voordat die een implementatie of CI-pipeline laat mislukken. De validator parseert elk document in de invoer met een YAML 1.2-parser, wijst dubbele sleutels, tabs als inspringing en onbeperkte aliasuitbreiding af en meldt de eerste fout met het document, de regel en de kolom. Bij geldige invoer ziet u het aantal documenten, het type op het hoogste niveau van elk document en eventuele waarschuwingen. Gemaakt voor auteurs van configuraties voor Kubernetes en Docker Compose.

## Veelgestelde vragen

### Wat controleert de YAML-validator?

De validator parseert de volledige YAML-syntaxis: inspringing, blok- en flowcollecties, waarden met en zonder aanhalingstekens, anchors, aliases, tags en directives. Ook dubbele sleutels in een mapping gelden als fout. Het resultaat is een bevestiging met een korte samenvatting of de eerste fout met de positie en een toelichting.

### Welke versie van YAML volgt de validator?

De validator gebruikt het kernschema YAML 1.2, de huidige versie van de specificatie. In versie 1.2 zijn woorden zoals yes, no, on en off gewone strings in plaats van booleans, dus ze veroorzaken nooit een fout. Documenten die zijn geschreven voor YAML 1.1-tools worden nog steeds geaccepteerd zolang de syntaxis geldig is.

### Waarom worden dubbele sleutels als fouten gemeld?

De specificatie YAML vereist unieke sleutels in een mapping. Veel parsers behouden stilzwijgend de laatste waarde, waardoor configuratiefouten zoals een tweemaal gedefinieerde instelling verborgen blijven. De validator meldt de regel en kolom van de herhaalde sleutel, zodat u kunt bepalen welke waarde u wilt behouden.

### Hoe worden regelnummers, kolomnummers en documentnummers geteld?

Regels en kolommen beginnen bij 1 vanaf het begin van de invoer die u plakt. Documenten worden geteld in de volgorde waarin ze verschijnen en zijn gescheiden door regels met ---; het eerste document is dus document 1. De positie geeft aan waar de parser het probleem heeft ontdekt, wat direct na de daadwerkelijke fout kan zijn.

### Kan ik meerdere YAML-documenten tegelijk valideren?

Ja. Scheid de documenten met --- zoals in een Kubernetes-manifest met meerdere documenten; elk document wordt dan geparseerd. Een geldig resultaat toont het aantal documenten en het type op het hoogste niveau van elk document.

### Wat betekent het type op het hoogste niveau?

Het geeft aan wat elk document op het hoofdniveau bevat: een mapping van sleutels en waarden, een reeks items, één scalaire waarde of helemaal niets. De meeste configuratiebestanden zijn mappings, terwijl lijsten met resources vaak reeksen zijn. Een verkeerd type duidt hier meestal op een verkeerd geplaatste streep of inspringing.

### Wat zijn waarschuwingen?

Waarschuwingen zijn problemen die het parseren niet stoppen, bijvoorbeeld een tag die de parser niet kent en daarom als gewone waarde wordt gelezen. Elke waarschuwing wordt vermeld met de regel en kolom, tot maximaal 20 waarschuwingen. Een document met waarschuwingen geldt nog steeds als geldig.

### Waarom worden tabs geweigerd?

YAML verbiedt tabtekens voor inspringing, omdat de breedte daarvan niet eenduidig is. Vervang de tabs aan het begin van de gemelde regel door spaties en houd de inspringing consistent met de omliggende regels. Tabs binnen waarden en strings tussen aanhalingstekens zijn toegestaan.

### Is de validator beschermd tegen aliasbommen?

Ja. Aliassen kunnen maximaal 100 keer worden uitgebreid. Een document dat is gemaakt om aliassen tot gigabytes aan gegevens te vermenigvuldigen, ook wel een billion laughs-aanval genoemd, wordt daarom als ongeldig gemeld in plaats van het geheugen uit te putten. Normaal gebruik van anchors en aliassen voor gedeelde instellingen blijft ruim onder deze limiet.

### Valideert de tool aan de hand van een schema zoals Kubernetes of OpenAPI?

Nee, de tool controleert alleen de syntaxis en structuur, niet of de sleutels en waarden overeenkomen met een bepaald schema. Invoer mag maximaal 5 MiB groot zijn. Gebruik de Data Format Converter om geldige YAML om te zetten naar JSON, TOML of een ander formaat.

Hier adverteren?

[E-mail ons](mailto:hi@dennn.is?subject=Adverteren%20op%20OneClick%20Pro)

[Advertentie De plug-insuite voor agents van WordPress.](https://sleekwp.com/?ref=oneclickpro)
