# Validador de YAML

Verifique YAML em busca de erros de sintaxe antes que causem falhas em uma implantação ou pipeline de CI. O validador analisa todos os documentos da entrada com um analisador YAML 1.2, rejeita chaves duplicadas, tabulações usadas para indentação e expansão descontrolada de aliases, e informa o primeiro erro com seu documento, linha e coluna. Se a entrada for válida, mostra o número de documentos, o tipo de nível superior de cada um e quaisquer avisos. Criado para Kubernetes, Docker Compose e autores de arquivos de configuração.

## Perguntas frequentes

### O que o validador de YAML verifica?

Ele analisa toda a sintaxe de YAML: indentação, coleções em bloco e em fluxo, escalares entre aspas e sem aspas, âncoras, aliases, tags e diretivas. Também considera um erro as chaves duplicadas em um mapeamento. O resultado é uma confirmação com um breve resumo ou o primeiro erro, com sua posição e explicação.

### Qual versão de YAML ele segue?

O validador usa o esquema principal YAML 1.2, a versão atual da especificação. Na versão 1.2, palavras como yes, no, on e off são strings comuns, não valores booleanos, portanto nunca causam um erro. Documentos escritos para ferramentas YAML 1.1 continuam sendo aceitos, desde que a sintaxe seja válida.

### Por que chaves duplicadas são sinalizadas como erros?

A especificação YAML exige que as chaves de um mapeamento sejam únicas. Muitos parsers mantêm silenciosamente o último valor, ocultando erros de configuração, como uma definição duplicada para a mesma opção. O validador informa a linha e a coluna da chave repetida para que você possa decidir qual valor manter.

### Como são contados os números de linha, coluna e documento?

As linhas e colunas começam em 1, a partir do início da entrada que você colou. Os documentos são contados na ordem em que aparecem, separados por linhas com ---, portanto o primeiro documento é o documento 1. A posição indica onde o parser detectou o problema, que pode ser logo depois do erro propriamente dito.

### Posso validar vários documentos YAML de uma só vez?

Sim. Separe os documentos com --- como em um manifesto Kubernetes com vários documentos, e todos serão analisados. Um resultado válido mostra o número de documentos e o tipo de nível superior de cada um.

### O que significa o tipo de nível superior?

Ele informa o que cada documento contém na raiz: um mapeamento de chaves e valores, uma sequência de itens, um único valor escalar ou nada. A maioria dos arquivos de configuração são mapeamentos, enquanto listas de recursos costumam ser sequências. Um tipo incorreto aqui geralmente indica um hífen ou uma indentação no lugar errado.

### O que são avisos?

Avisos são problemas que não interrompem a análise, como uma tag desconhecida pelo parser, que então é lida como um valor simples. Cada aviso é listado com sua linha e coluna, até o limite de 20. Um documento com avisos ainda é considerado válido.

### Por que tabulações são rejeitadas?

YAML proíbe caracteres de tabulação na indentação porque sua largura é ambígua. Substitua por espaços as tabulações no início da linha indicada e mantenha a indentação consistente com as linhas ao redor. Tabulações dentro de valores e strings entre aspas são permitidas.

### Há proteção contra bombas de aliases?

Sim. Os aliases podem se expandir no máximo 100 vezes, portanto um documento criado para multiplicar aliases até gerar gigabytes de dados, muitas vezes chamado de ataque billion laughs, é sinalizado como inválido em vez de esgotar a memória. O uso normal de âncoras e aliases para configurações compartilhadas fica bem abaixo desse limite.

### Ele valida de acordo com um esquema, como Kubernetes ou OpenAPI?

Não, ele verifica apenas a sintaxe e a estrutura, não se as chaves e os valores correspondem a um esquema específico. As entradas podem ter até 5 MiB. Para converter YAML válido em JSON, TOML ou outro formato, use o Data Format Converter.

Seu anúncio aqui?

[Envie-nos um e-mail](mailto:hi@dennn.is?subject=Publicidade%20em%20OneClick%20Pro)

[Anúncio O conjunto de plugins pronto para agentes para WordPress.](https://sleekwp.com/?ref=oneclickpro)
