YAML - Propriedades do Nó

Cada nó de apresentação inclui duas características principais chamadas anchor e tag. As propriedades do nó podem ser especificadas com o conteúdo do nó, omitido do fluxo de caracteres.

O exemplo básico de representação do nó é o seguinte -

%YAML 1.1
---
!!map {
   ? &A1 !!str "foo"
   : !!str "bar",
   ? !!str &A2 "baz"
   : *a1
}

Nó âncoras

A propriedade anchor representa um nó para referência futura. O fluxo de caracteres da representação YAML no nó é denotado com oampersand (&)indicador. O processador YAML não precisa preservar o nome da âncora com os detalhes de representação compostos nele. O código a seguir explica isso -

%YAML 1.1
---
!!map {
   ? !!str "First occurence"
   : &A !!str "Value",
   ? !!str "Second occurence"
   : *A
}

A saída de YAML gerado com nós âncora é mostrada abaixo -

---
!!map {
   ? !!str "First occurence"
   : !!str "Value",
   ? !!str "Second occurence"
   : !!str "Value",
}

Tags de nó

A propriedade tag representa o tipo de estrutura de dados nativa que define um nó completamente. Uma tag é representada com o (!) indicador. As tags são consideradas parte inerente do gráfico de representação. O exemplo a seguir explica as tags de nó em detalhes -

%YAML 1.1
---
!!map {
   ? !<tag:yaml.org,2002:str> "foo"
   : !<!bar> "baz"
}

Conteúdo de Nó

O conteúdo do nó pode ser representado em um conteúdo de fluxo ou formato de bloco. O conteúdo do bloco se estende até o final da linha e usa recuo para denotar a estrutura. Cada tipo de coleção pode ser representado em um estilo de coleção de fluxo único específico ou pode ser considerado como um bloco único. O código a seguir explica isso em detalhes -

%YAML 1.1
---
!!map {
   ? !!str "foo"
   : !!str "bar baz"
}

%YAML 1.1
---
!!str "foo bar"

%YAML 1.1
---
!!str "foo bar"

%YAML 1.1
---
!!str "foo bar\n"