📅  最后修改于: 2020-10-14 08:41:05             🧑  作者: Mango
每个表示节点包括两个主要特征,分别称为anchor和tag 。节点属性可以用节点内容指定,字符流中省略。
节点表示的基本示例如下-
%YAML 1.1
---
!!map {
? &A1 !!str "foo"
: !!str "bar",
? !!str &A2 "baz"
: *a1
}
锚属性表示一个节点,以供将来参考。节点中YAML表示的字符流用&指示符表示。 YAML处理器无需保留锚名称,该锚名称中包含表示形式的详细信息。以下代码对此进行了解释-
%YAML 1.1
---
!!map {
? !!str "First occurence"
: &A !!str "Value",
? !!str "Second occurence"
: *A
}
用锚节点生成的YAML的输出如下所示-
---
!!map {
? !!str "First occurence"
: !!str "Value",
? !!str "Second occurence"
: !!str "Value",
}
标签属性表示本机数据结构的类型,它完全定义了一个节点。标签用( ! )指示符表示。标签被认为是表示图的固有部分。以下示例详细说明了节点标签-
%YAML 1.1
---
!!map {
? ! "foo"
: ! "baz"
}
节点内容可以以流内容或块格式表示。块内容延伸到行尾,并使用缩进来表示结构。每种收集类型都可以用特定的单一流收集样式表示,也可以视为一个块。以下代码对此进行了详细说明-
%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"