Movatterモバイル変換


[0]ホーム

URL:


Ir para o conteúdo
Wikipédia
Busca

YAML

Origem: Wikipédia, a enciclopédia livre.
Este artigo ou secção contémuma lista de referências no fim do texto, mas as suas fontes não são claras porquenão sãocitadas no corpo do artigo, o quecompromete aconfiabilidade das informações. Ajude amelhorar este artigoinserindo citações no corpo do artigo.(outubro de 2010)
Logo da YAML.

OYAML (acrónimo de "YAML Ain't Markup Language") é um formato deserialização (codificação de dados) de dados legíveis por humanos inspirado em linguagens computacionais (programação emarcação), proposto porClark Evans em2001.

Como é usado frequentemente XML para serialização de dados e XML é uma autêntica linguagem de marcação de documentos, é razoável considerar o YAML como uma linguagem de marcação rápida.

História

[editar |editar código]

Atualmente, o XML foi adotado em diversas áreas: da justiça à saúde; a principal escolha para formatos de documentos na maior parte das aplicações computacionais; recomendado pelaW3C. No entanto, este também possui os pontos fracos (sintaxe redundante; construção dos parsers não trivial; não suporta um grande conjunto de tipos de dados). Assim existem dezenas de alternativas ao XML no mercado, de entre estas duas destacam-se recentemente: o YAML e o JSON.[1]

YAML é umacrónimo recursivo que significa "YAML Ain't Markup Language" (em português: "YAML não élinguagem de marcação"). Porém, no início do seu desenvolvimento YAML significava "Yet Another Markup Language" ("Mais outra linguagem de marcação") para distinguir seu propósito centrado em dados no lugar de documentos marcados; pois tem grande parte das características das linguagens de anotação, mas com uma notação diferente, sendo muito mais leve e compacto (ler, editar, modificar e produzir).[1]

Um formato de codificação de dados à serem legíveis aos humanos baseado nas características de outras linguagens de marcação e também linguagens de programação, como:XML,C,Python,Perl (assim como o formato de correio eletrônicoRFC 2822), sendo proposto em 2001 por Clark Evans - mas desenvolvido em conjunto comIngy döt Net eOren Ben-Kiki -[1] com o pensamento "de que todos os dados podem ser adequadamente representados por combinações de listas, mapas e registos".[1]

Características

[editar |editar código]

YAML foi criado na crença que todos os dados podem ser representados adequadamente como combinação delistas,hashes (mapas) e dados escalares (valores simples). A sintaxe é relativamente simples e foi projetada tendo em conta que é muito legível, mas que também fosse facilmente mapeada pelostipo de dados mais comuns na maioria das linguagens de alto-nível. Além disso, YAML utiliza uma notação baseada emindentação e um conjunto de caracteressigil distintos dos que são usados pelo XML, fazendo com que as duas linguagens sejam facilmente compostas uma na outra.

  • Os conteúdos em YAML utilizam o conjunto de caracteresunicode (UTF-8 ouUTF-16).
  • A estrutura do documento é composto por identação com espaços em branco; não é permitido o uso de caracteres de tabulação para a identação.
  • Os membros das listas são encabeçados por um traço ( -) nos títulos e com um membro em cada linha, ou entrecolchetes ( [ ]) e separados por uma vígula e espaço (,  ).
  • Os vetores associativos se representam usando os dois pontos (:) seguido por um espaço. Na seguinte forma "Chave: valor", um por linha ou entre chaves ( {   }) e separados por vírgula seguido de espaço (,  ).
  • Um valor de umvetor associativo vem precedida por um sinalinterrogação (?), o que permite que se construam chaves complexas sem ambiguidade.
  • Os valores simples não levam as aspas, mas podem ser incluídas as aspas duplas ( "), ou aspas simples ( ').
  • Nas aspas duplas, os caracteres especiais podem ser representados com sequências de escape similares a da linguagem de programação C, que começam com uma barra invertida ( \).
  • Pode-se incluir múltiplos documentos dentro de um único fluxo, separando-os por três traços ( ---); os três pontos (...) indicam o fim de um documento dentro de um fluxo.
  • Os nós repetidos podem ser inicializados com ume comercial ( &) e são referidos posteriormente usando oasterisco ( *)
  • Os comentários são encabeçados por cerquilha ( #) e continuam até o final da linha.
  • Os documentos YAML podem ser precedidos por diretivas compostas por um sinal de porcentagem ( %) seguidos de um nome e parâmetros delimitados por um espaço.
    • A diretiva %YAML é utilizada para identificar a versão do YAML em um documento.
    • A diretiva %TAG é utilizada como atalho para prefixos deURIs.

YAML requer que as vírgulas e pontos sejam utilizados como separadores nas listas seguidos por um espaço, de forma que os valores escalares que contenham sinais de pontuação (como 5,280 ou http://www.wikipedia.org) possam se representar sem a necessidade de utilizar aspas.

Exemplos

[editar |editar código]

Listas

[editar |editar código]
---# Enciclopédias favoritas, formato em bloco-Wikipedia-Encarta-Barsa---# Lista de compra, formato em linha[Britannia,Larrousse]

Vetores associativos

[editar |editar código]
---# Em Bloconome:Pedroidade:23---# Em linha{nome:Pedro, idade:23}

Preservando retornos de linha

[editar |editar código]
--- |A Rosa do PovoSentimento do mundoO poeta, declina de toda responsabilidade,na marcha do mundo, capitalista,e com suas palavras, intuições,símbolos e outras armas, promete ajudara destruí-lo, como uma pedreira,uma, floresta, um verme

Ignorando retornos de linha

[editar |editar código]
--->Este textoserá formatadocomo umúnico parágrafo.As linhas em brancofazendo a mudança de parágrafo.

Listas de vetores associativos

[editar |editar código]
-{nome:Cosme, idade:47}-nome:Damiãoidade:57

Vetores associados a listas

[editar |editar código]
nomes:[Cosme,Damião]nomes:-Cosme-Damião

Implementações

[editar |editar código]

Existem implementação de YAML para as seguintes linguagens:

Ver também

[editar |editar código]

Outras linguagens de marcação:

Referências

  1. abcdFonseca, Rúben; Simões, Alberto (2007).Alternativas ao XML: YAML e JSON(PDF). [S.l.]: Universidade do Minho.Resumo divulgativo 

Ligações externas

[editar |editar código]
Formatos de troca de dados
Formatos de leitura
Formatos codificados
Obtida de "https://pt.wikipedia.org/w/index.php?title=YAML&oldid=71310688"
Categoria:
Categorias ocultas:

[8]ページ先頭

©2009-2026 Movatter.jp